小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

iPad與iPhone調(diào)用UIImagePickerViewController方法

 wintelsui 2014-02-27

iPadiPhone調(diào)用UIImagePickerViewController方法略有不同是本文要介紹的內(nèi)容,文中很詳細(xì)的講述了iPadiphone各自的調(diào)用方法,來(lái)看詳細(xì)內(nèi)容。

我們知道,在iPhone中獲取照片庫(kù)常用的方法如下:

  1. UIImagePickerController *m_imagePicker = [[UIImagePickerController alloc] init];  
  2.     if ([UIImagePickerController isSourceTypeAvailable:  
  3.          UIImagePickerControllerSourceTypePhotoLibrary]) {  
  4.         m_imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;  
  5.         m_imagePicker.delegate = self;  
  6.         //        [m_imagePicker.navigationBar.subviews];  
  7.         [m_imagePicker setAllowsEditing:NO];  
  8.         //m_imagePicker.allowsImageEditing = NO;  
  9.         [self presentModalViewController:m_imagePicker animated:YES];  
  10.         [m_imagePicker release];  
  11.     }else {  
  12.         UIAlertView *alert = [[UIAlertView alloc]initWithTitle:nil message:  
  13. @"Error accessing photo library!" delegate:nil cancelButtonTitle:@"Close" otherButtonTitles:nil];  
  14.         [alert show];  
  15.         [alert release];  
  16.     } 

這對(duì)iPhone的操作是沒(méi)有問(wèn)題的。但是當(dāng)我們?cè)趇Pad環(huán)境中卻有問(wèn)題了,當(dāng)我們運(yùn)行時(shí)會(huì)報(bào)如下錯(cuò)誤:

  1. Terminating app due to uncaught exception 'NSInvalidArgumentException',   
  2. reason: 'On iPad, UIImagePickerController must be presented via UIPopoverController' 

所以我們必須通過(guò)UIPopoverController來(lái)實(shí)現(xiàn)才行。具體實(shí)現(xiàn)如下:

  1. UIImagePickerController *m_imagePicker = [[UIImagePickerController alloc] init];  
  2.     if ([UIImagePickerController isSourceTypeAvailable:  
  3.          UIImagePickerControllerSourceTypePhotoLibrary]) {  
  4.         m_imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;  
  5.         m_imagePicker.delegate = self;  
  6.         [m_imagePicker setAllowsEditing:NO];  
  7.         UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:m_imagePicker];  
  8.         self.popoverController = popover;  
  9.         //popoverController.delegate = self;  
  10.            
  11.         [popoverController presentPopoverFromRect:CGRectMake(0, 0, 300, 300) inView:self.
  12. view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];  
  13.            
  14.         //[self presentModalViewController:m_imagePicker animated:YES];  
  15.         [popover release];  
  16.         [m_imagePicker release];  
  17.     }else {  
  18.         UIAlertView *alert = [[UIAlertView alloc]initWithTitle:nil message:@"Error accessing photo library!" 
  19. delegate:nil cancelButtonTitle:@"Close" otherButtonTitles:nil];  
  20.         [alert show];  
  21.         [alert release];  
  22.     } 

這里需要注意,對(duì)局部UIPopoverController對(duì)象popover我們賦給了一個(gè)全局的UIPopoverController對(duì)象popoverController。而不能直接調(diào)用popover。因?yàn)樵趐opover對(duì)象還可見(jiàn)時(shí),是不能夠被釋放的。

小結(jié):iPadiphone調(diào)用UIImagePickerViewController方法略有不同的內(nèi)容介紹完了,希望本文對(duì)你有所幫助!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多