UIActionsheet в центре экрана

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

UIView *placeholderview=[[UIView alloc]initWithFrame:CGRectMake(0, 310, 320, 100)];
[self.view addSubview:placeholderview];
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Open File",@"Save FIle",@"New File",@"Export Image",nil];
[actionSheet showFromRect:CGRectMake(0,0, 320, 10) inView:placeholderview animated:YES];
[actionSheet release];

Я получаю желаемый результат, но могу нажать только кнопку отмены и кнопку половины экспорта изображения. Я не знаю, где я ошибаюсь. Пожалуйста, помогите мне. Что мне делать, чтобы все заработало. < img src = "https://i.stack.imgur.com/23ar3.png" alt = "введите описание изображения здесь">


person Sankar Chandra Bose    schedule 27.04.2011    source источник
comment
с какой именно проблемой вы столкнулись, пожалуйста, уточните, ваш вопрос непонятен   -  person Gypsa    schedule 27.04.2011
comment
возможно, кликабельна только часть внутри вашего placeholderview? вы пробовали его расширить?   -  person Axel    schedule 27.04.2011
comment
Не думаю, что яблоко это понравится .. :(   -  person Krishnabhadra    schedule 27.04.2011


Ответы (2)


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

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

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

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

person Jasarien    schedule 27.04.2011

UIActionSheet's _ 2_ можно использовать только на iPad. Его поведение на iPhone не определено.

person Douwe Maan    schedule 27.04.2011