2012-10-02 3 views
2

코드에서 Objective-C로 사진을 만드는 방법과 타이머를 사용하여 이미지 displayer에서 찾고있는 방법을 찾고 있습니다.timer를 사용하여 프로그래밍 방식으로 사진 찍기

의미 : 표준 사진 앱과 비슷한 인터페이스가 좋겠지 만 버튼을 누른 후에 사진을 찍어서는 안되지만 버튼은 타이머를 시작해야합니다 (다른 값을 확인하는 타이머에서).

의는 예를 만들어 보자 : 나는 버튼을 눌러

  • 타이머가 시작

  • 확인 값을 1 ~ 2 초 후 사진이 들어간

  • 했다

    사진이 자동으로 사진 보관함에 저장됩니다.

  • 응용 프로그램은 다른 사진

을 준비하지만 그 시작하는 방법에 대한 생각이 없습니다. 사진 응용 프로그램이라고 불리는 코드 예제를 보았지만 많은 응용 프로그램에서 코드를 보았습니다. 사진이 찍히면 간단히 저장해야합니다.

어떻게하면됩니까?

+0

그래서 기본적으로 당신은 카운트 다운 기능이있는 사진 응용 프로그램을 구현하려면? – DrummerB

+0

나는 확인을 위해 값을 확인하고 싶습니다. 결과가 맞으면 사진이 찍히고 그렇지 않으면 타이머가 리바인됩니다. 분명히 취소 버튼이 포함됩니다.어쨌든 나는이 내부 코드가 당신을 도와 주는데 중요하다고 생각하지 않습니다. – user1714647

+0

설명서를 읽었으나 2 ~ 3 주에서 시험해보고 있습니다.하지만이 이벤트와 프레임 워크에 익숙하지 않습니다. – user1714647

답변

0

기본 카메라 GUI를 표시하려면 UIImagePickerController을 사용하십시오.

UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
picker.showsCameraControls = NO; 

당신은 NOshowsCameraControls을 설정하여 기본 카메라 컨트롤을 숨길 수 있습니다. 그런 다음 UIView을 만들고 컨트롤을 추가하고 해당보기에 cameraOverlayView을 설정하여 자신의 컨트롤을 정의 할 수 있습니다.

UIView *cameraControlsView = [[UIView alloc] initWithFrame:controlsFrame]; 
UIButton *captureButton = [[UIButton alloc] initWithFrame:buttonFrame]; 
[captureButton setTitle:@"Capture" forState:UIControlStateNormal]; 
[captureButton addTarget:self action:@selector(buttonPressed:)   
     forControlEvents:UIControlEventTouchUpInside]; 
[cameraControlsView addSubview:captureButton]; 
picker.cameraOverlayView = cameraControlsView; 

사용자가 사용자 지정 캡처 UIButton을 누르면 타이머를 시작할 수 있습니다. 타이머가 작동하면 확인을 수행하고 takePicture 메서드를 사용하여 이미지를 캡처합니다. 사진 라이브러리에 이미지를 저장하는 그림을 프로그래밍 방식

-(void)takePicure 

을 취할 수있는 UIImagePickerController를 클래스의 방법이 있습니다

- (void)buttonPressed:(id)sender { 
    [NSTimer scheduledTimerWithTimeInterval:3.0f target:self 
    selector:@selector(timerFired:) userInfo:nil repeats:NO]; 
} 

- (void)timerFired:(NSTimer *)timer { 
    if (whateverIsOk) { 
     [self.picker takePicture]; 
    ) 
} 
+0

이 도움을 주셔서 감사합니다.하지만 적용하기가 어려워요. 타이머가 사용되지 않는다는 경고가 있습니다. 버튼을 누르면 아무 일도 일어나지 않습니다. – user1714647

+0

경고? GUI와 버튼을 만드는 데 성공 했습니까? 복사 붙여 넣기 솔루션이 아니며 가능한 오류를 확인하지 않고 여기에 입력했습니다. – DrummerB

+0

나는 GUI와 버튼을 만들었지 만, 아무 일도 일어나지 않고 경고 메시지는 "Unused variable timer"이다. - (void) timerFired : (NSTimer *) timer – user1714647

0

, 당신은 ALAssetLibrary

사용하는 두 가지 옵션

  1. ALAssetsLibrary *al = [[ALAssetsLibrary alloc] init]; [al writeImageDataToSavedPhotosAlbum:user.photo.image metadata:nil completionBlock:^(NSURL *assetURL, NSError *error) { }];

  2. void UIImageWriteToSavedPhotosAlbum(UIImage *image, id completionTarget, SEL completionSelector, void *contextInfo);

+0

'takePicture'가 이미 포토 라이브러리에 저장되어 있다고 생각하지 않습니까? – DrummerB

+0

나는 그렇게 생각하지 않는다. 내가 확인합니다 – Rowdur

관련 문제