2010-08-31 29 views
0

有沒有辦法只用iPhone拍照?如何用iPhone拍下照片

(沒有代表或控制器)。

其實我要的是:

1的一個觀點,即顯示攝像頭所看到的,

2)一個按鈕拍照。 (像調用函數和獲取照片背面)

加入:「查看」上面會在正常屏幕的區域中,也按鈕

這將是該AVFoundation。

感謝

+0

內置的攝像頭應用程序似乎符合您的要求。如果你想要一個API,那麼你必須使用UIImagePickerController並實現UIImagePickerControllerDelegate方法。 – falconcreek 2010-08-31 12:53:28

回答

2

如果你只是想用相機AVFoundation框架的方式矯枉過正,而且它意味着更多的聲音和電影。基本的相機方法都在UIKit框架中。如果你想編輯圖像,AVFramework不是你需要的。

另外,不能沒有代理或控制器的應用程序。這就是應用程序的製作過程。沒有他們,你什麼都做不了。有關更多信息,請參見Apple View Controller Programming Guide

像falconcreek說的,你需要使用UIImagePickerController並設置UIImagePickerDelegate以在應用程序中使用相機。

問題:你想用這些圖像來處理相機應用程序不起作用的是什麼?

+0

在我的問題中的兩點。在正常的視圖上顯示鏡頭顯示的內容和除此之外的按鈕(使用控制器看起來很困難)。 – Olav 2010-08-31 21:51:44

+0

這是控制器的默認行爲。您只需將UIImagePickerController源設置爲相機即可。 – MishieMoo 2010-09-01 00:26:04

0

只需將follwing代碼複製並粘貼到您的項目中即可獲得完全實現的功能。

其中takePhotochooseFromLibrary是將按鈕觸摸來叫我自己的方法名。和

所以一定要引用適當的按鈕出口這些方法。

希望這將有助於:)

-(IBAction)takePhoto 
{ 
     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 
{ 

    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 UImageView. 
}