UIImageView перед UIPopoverController - PullRequest
1 голос
/ 04 марта 2012

Я делаю приложение для слайд-шоу фотографий на iPad. Я позволил пользователю открывать свои фотоальбомы с помощью UIPopoverController. Когда пользователь выбирает изображение, я хотел бы показать ему сообщение о том, что фотография была добавлена ​​/ выбрана. Но проблема у меня заключается в том, что он продолжает появляться за uipopover. Как я могу отобразить его в верхней части uipopover? Смотреть скриншот

enter image description here

Не волнуйтесь, изображение исчезает через секунду.

Вот код, который я использую

-(IBAction)selectExitingPicture
{
    //Specially for fing iPAD
    UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
    imagePicker.delegate = self;
    imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    imagePicker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage];

    popoverController = [[UIPopoverController alloc] initWithContentViewController:imagePicker];
    [popoverController presentPopoverFromRect:CGRectMake(0.0, 0.0, 400.0, 300.0) 
                             inView:self.view
           permittedArrowDirections:UIPopoverArrowDirectionAny 
                           animated:YES];

    photoAddedImgView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 250, 300, 100)];
    [self.view addSubview:photoAddedImgView];

}

-(void)imagePickerController:(UIImagePickerController *)picker
      didFinishPickingImage : (UIImage *)image
                 editingInfo:(NSDictionary *)editingInfo
{

....

UIImage *photoAddedImg = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"button_photo_added" ofType:@"png"]];

        [self.photoAddedImgView setImage:photoAddedImg];

}

Ответы [ 2 ]

2 голосов
/ 04 марта 2012

Попробуйте использовать insertSubview:atIndex: или insertSubview:aboveSubview вместо addSubView при отображении сообщения о состоянии.

EDIT:

Я немного больше исследовал в iOS HIG и посмотрю, что нашел:

"Не отображать модальное представление поверх всплывающего окна. За исключением предупреждения, ничто не должно отображаться поверх поповера. "

https://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/UIElementGuidelines/UIElementGuidelines.html#//apple_ref/doc/uid/TP40006556-CH13-SW40

На самом деле, это может быть нормально, если вы не можете этого сделать. И даже если это возможно, вам следует переосмыслить то, что вы хотите сделать, так как это действительно не рекомендуется согласно HIG.

0 голосов
/ 27 октября 2014

Добавьте ваше изображение как подпредставление в UIWindow.Он не будет автоматически, но будет отображаться поверх всего.

...