-5

ボタンとimageviewを作成します。写真を撮るためにUIImagepickerを開くためのボタンのIBActionを作成します。その後、画像をimageviewに表示する必要があります。これを取得する方法。誰か助けてください。

4

2 に答える 2

5

IBActionボタンクリックでこのメソッドを呼び出します。UIImagePickerControllerカメラから画像をキャプチャするために開きます。

-(IBAction)openCamera
{
    @try 
    {
        UIImagePickerController *picker = [[UIImagePickerController alloc] init];  
        picker.sourceType = UIImagePickerControllerSourceTypeCamera;  
        picker.delegate = self; 

        [self presentModalViewController:picker animated:YES];
        [picker release];
    }
    @catch (NSException *exception) 
    {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No Camera" message:@"Camera is not available  " delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
}

このデリゲートは、画像の撮影が終了したときに呼び出されます。その画像をに保存しますUIImageView

-(void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary*)info
{
    [picker dismissModalViewControllerAnimated:YES];
    self.imageView.image=[info objectForKey:@"UIImagePickerControllerOriginalImage"];
}
于 2012-04-14T04:37:54.100 に答える
1

ヘッダー ファイル (.h) で UIImagePickerDelegate を宣言し、ボタン クリック イベントで以下のコードを記述します。

-(IBAction)YourMethodName_Clicked:(id)sender
{
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
        picker.delegate = self;
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])  {
                picker.sourceType = UIImagePickerControllerSourceTypeCamera;
                popover = [[UIPopoverController alloc] initWithContentViewController:picker];
                [popover presentPopoverFromRect:CGRectMake(0.0, 0.0, 400.0, 400.0) 
                                         inView:self.view
                       permittedArrowDirections:UIPopoverArrowDirectionAny 
                                       animated:YES];

//                [self presentModalViewController:picker animated:YES];
            }
            else{
                UIAlertView *altnot=[[UIAlertView alloc]initWithTitle:@"Camera Not Available" message:@"Camera Not Available" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
                altnot.tag=103;
                [altnot show];
                [altnot release];

            }
}

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {


    [picker dismissModalViewControllerAnimated:YES];
    UIImageView *imgview1=[[UIImageView alloc]initWithImage:[info objectForKey:@"UIImagePickerControllerOriginalImage"]];


    imgmain1.frame=CGRectMake(0.0, 0.0, 320.0, 460.0);//set your frame here
    [self.view addSubview:imgmain1];
    [imgmain1 relese];

}
于 2012-04-14T09:43:27.743 に答える