2015-04-12 110 views
12

當我嘗試使用「ABPeoplePickerNavigationController」或「UIImagePickerController」時,在大多數情況下它將無法正確加載。它將顯示屏幕的一部分(透明),從模擬器和設備的iOS 7(ipad)屏幕中間開始(屏幕截圖如下)。在iOS 8中,一切正常。ABPeoplePickerNavigationController和UIImagePickerController在ipad iOS7上無法正確顯示

這是我使用的ABPeoplePickerNavigationController代碼:

ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init]; 
picker.peoplePickerDelegate = self; 
self.preserveCurrentEntity = YES; 
[self presentViewController:picker animated:NO completion:nil]; 

的UIImagePickerController將剛剛突破採摘影片,但其他一切工作,這是我使用的代碼:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 

switch (buttonIndex) { 
    case ImagePickerModeCamera: 
      imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera; 
     break; 
    case ImagePickerModeAlbum: 
     imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
     break; 
    default: 
     break; 
} 
imagePicker.delegate = self; 

NSMutableArray *mediaType = [[NSMutableArray alloc] init]; 

switch (self.actionSheetType) { 
    case ActionSheetTypeImage: 
     [mediaType addObject:(NSString*)kUTTypeImage]; 
     break; 
    case ActionSheetTypeVideo: { 
     [mediaType addObject:(NSString*)kUTTypeMovie]; 
     [mediaType addObject:(NSString*)kUTTypeVideo]; 
     imagePicker.allowsEditing =NO; 
    } 
     break; 
    default: 
     break; 
} 

imagePicker.mediaTypes = mediaType; 
[self presentViewController:imagePicker animated:NO completion:nil]; 

這是加載ABPeoplePickerNavigationController時iOS7會發生什麼情況:

iOS 7

這是iOS8上裝載的ABPeoplePickerNavigationController時會發生什麼:

iOS8

什麼是解決這個問題的解決方案?

回答

5

看起來像我找到了解決我的問題。

我有一個根視圖控制器,有兩個xib,一個用於iPad,一個用於iPhone。看起來我的iPad雖然非常相似(只有一個更大),但卻造成了麻煩。我無法弄清楚爲什麼。

我現在只是使用iPhone,並確保它在iPad上正確調整大小,並且一切正常。

4

我有和你一樣的問題,但浪費了一些時間後,我得到了一些帖子,這可能是你的情況的原因。

iPhone庫並不在iOS模擬器在特殊情況工作的採摘機器視覺

Referred Post我的解決方案。併爲我工作。

更新它,如果你仍然面臨問題,我可以發佈我的代碼來幫助你。

HTH,享受編碼!

+0

這個問題不僅僅在模擬器上。 – Zammbi

+1

我已經編碼像你一樣,如果你需要我的代碼,我可以更新答案。 –