18

xcode で Cocoa を使用して iPhone アプリを作成しています。内蔵カメラで写真を撮る方法を示すチュートリアルやサンプル コードが見つかりません。どうすればいいですか?どこで良い情報を見つけることができますか?

ありがとう!

4

5 に答える 5

24

次のコードをコピーしてプロジェクトに貼り付けるだけで、完全に実装された機能を利用できます。

ここで、takePhotochooseFromLibrary は、ボタンタッチで呼び出される独自のメソッド名です。

これらの方法については、適切なボタンのアウトレットを参照してください。

   -(IBAction)takePhoto :(id)sender

{
        UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];

        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
        {
            [imagePickerController setSourceType:UIImagePickerControllerSourceTypeCamera];
        }

        // image picker needs a delegate,
        [imagePickerController setDelegate:self];

    // Place image picker on the screen
    [self presentModalViewController:imagePickerController animated:YES];
}



-(IBAction)chooseFromLibrary:(id)sender
{

    UIImagePickerController *imagePickerController= [[UIImagePickerController alloc] init]; 
    [imagePickerController setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];

    // image picker needs a delegate so we can respond to its messages
    [imagePickerController setDelegate:self];

    // Place image picker on the screen
    [self presentModalViewController:imagePickerController animated:YES];

}

//delegate methode will be called after picking photo either from camera or library
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{   
    [self dismissModalViewControllerAnimated:YES]; 
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

    [myImageView setImage:image];    // "myImageView" name of any UIImageView.
}
于 2012-09-12T05:41:57.547 に答える
11

を使用しUIImagePickerControllerます。これに関する優れたチュートリアルがここにあります。

http://www.zimbio.com/iPhone/articles/1109/Picking+Images+iPhone+SDK+UIImagePickerController

ソース タイプをUIImagePickerControllerSourceTypeCameraまたはに設定する必要がありUIImagePickerControllerSourceTypePhotoLibraryます。これら 2 つのタイプでは、画面上の表示が大きく異なることに注意してください。両方を注意深くテストする必要があります。UIImagePickerController特に、 を内部にネストしている場合、UINavigationController注意しないと複数のナビゲーション バーやその他の奇妙な効果が発生する可能性があります。

このスレッドも参照してください

于 2008-09-24T13:35:03.370 に答える
4

このUIImagePickerControllerクラスでは、写真を撮ったり、写真ライブラリから選択したりできます。ソース タイプを として指定しUIImagePickerControllerSourceTypeCameraます。

以前に尋ねられたこの質問も参照してください: iPhone SDK を使用してカメラにアクセスする

于 2008-09-23T20:17:22.880 に答える
0

アプリの写真を撮るために使用したコードは次のとおりです

- (IBAction)takephoto:(id)sender {

    picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    [picker setSourceType:UIImagePickerControllerSourceTypeCamera];
    [self presentViewController:picker animated:YES completion:NULL];


}
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    img = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
    [imageview setImage:img];
    [self dismissViewControllerAnimated:YES completion:NULL];
}

写真を撮り直したい場合は、この関数を追加するだけです

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
    [self dismissViewControllerAnimated:YES completion:NULL];
}
于 2014-10-07T20:03:16.883 に答える