UIActionSheet в середине экрана

#iphone #uiactionsheet

#iPhone #uiactionsheet

Вопрос:

Я хочу показать UIActionSheet в середине экрана.Я попытался со следующим кодом

UIView *placeholderview=[[UIView alloc]Инициализация с помощью фрейма:CGRectMake(0, 310, 320, 100)];
[self.view добавляет SUBVIEW:placeholderview];
UIActionSheet *ActionSheet = [[Выделение UIActionSheet] Инициализация с заголовком: @"" делегирование: самоотменяющийся заголовок кнопки:@"Отмена" деструктивного заголовка кнопки: ноль Другие заголовки кнопок: @"Открыть файл",@"Сохранить файл", @ "Новый файл", @ "Экспортировать изображение", ноль];
[Таблица действий showFromRect:CGRectMake(0,0, 320, 10) inView: анимированный просмотр placeholderview: ДА];
[Выпуск таблицы действий];

Я получаю желаемый результат, но могу нажать только кнопку отмены и половину кнопки экспорта изображения.Я не знаю, где я ошибаюсь.Пожалуйста, пожалуйста, любой орган, помогите мне.Что я должен сделать, чтобы это заработало.введите описание изображения здесь

Комментарии:

1. с какой именно проблемой вы столкнулись, пожалуйста, уточните, ваш вопрос непонятен

2. возможно, интерактивна только часть внутри вашего placeholderview? вы пытались его расширить?

3. Я не думаю, что Apple будет довольна этим ..: (

Ответ №1:

UIActionSheet предназначен для отображения в нижней части экрана.

Он предоставляет методы для представления с панели инструментов или панели вкладок в случаях, когда эти элементы пользовательского интерфейса могут создавать помехи.

Почему вы хотите показать таблицу действий в середине экрана. Я бы не рекомендовал это, потому что это выглядит неправильно и не является спроектированным поведением элемента управления.

Метод, который вы используете в данный момент, предназначен для iPad — его не следует использовать на iPhone, поскольку он вызывает неопределенное поведение (как у вас).

Ответ №2:

UIActionSheet showFromRect:inView:animated: метод предполагается использовать только на iPad. Его поведение на iPhone не определено.