2013-03-20 3 views
0

카메라로 찍은 사진을 저장하는 동안 대기중인 대화 상자/표시기가 올바른지 여부를 알 수 없습니다. iPad 4에서는 저장 프로세스가 매우 빠르지 만 다른 장치에서는이 프로세스가 더 많은 시간이 걸릴 수 있습니다.iOS에서 사진을 저장하는 동안 대기중인 대화 상자 또는 표시기를 표시할만한 가치가 있습니까?

새 대화 목록을 시작하여 이미지를 저장하고 대화 상자/표시기를 표시하십시오.

나는 그만한 가치가 있다고 생각하지만, 더 많은 전문가의 의견을 알고 싶습니다.

[indicator startAnimating]; 
[NSThread detachNewThreadSelector:@selector(saveImage) toTarget:self withObject:nil]; 

및 ...

- (void)saveImage { 
    library = [[ALAssetsLibrary alloc] init]; 
    [library saveImage:myPhoto toAlbum:@"MyAlbum" withCompletionBlock:^(NSError *error) { 
     if (error==nil) { 
      [indicator stopAnimating]; 
     } 
    } 
} 

내가 정의 앨범에 이미지를 저장이 범주를 사용하고 있습니다 : https://github.com/Kjuly/ALAssetsLibrary-CustomPhotoAlbum

+1

왜 새 스레드를 생성 하시겠습니까? 이러한 메소드는 이미 비동기식입니다. –

+0

@CarlVeazey 작업이 완료되는 동안 표시기를 표시합니다. 어쩌면 나는 너트를 깨는 데 쓰레기를 사용하고있을 것입니다. – Xithias

+0

이미 금이 간 너트를 깨기 위해 쇠 망치를 사용하고 있습니다. 이러한 alassetlibrary 메소드는 이미 비동기식입니다. –

답변

1

일반을

일부 예제 코드 내 질문에 설명하기 iOS 패러다임은 사용자가 진행중인 '저장'작업을 인식해서는 안되기 때문에 배경 스레드에서 이러한 작업을하는 것이 좋습니다.

그래서, 현재 고려중인 방식을 사용하면 iOS UI 가이드 라인에서 완벽하게 수용 할 수 있습니다.

+0

그럼 새 스레드를 던져서는 안되며 표시기를 표시하지 않고 이미지를 저장하면됩니다. 저장 프로세스가 이미 백그라운드 스레드에 있습니다. 그렇지 않습니까? – Xithias