2011-12-15 2 views
0

Мне нужно реализовать одну кнопку, которая будет отображаться в правом верхнем углу приложения на UIView или MKMapView. При нажатии этой кнопки появляется комбо, и пользователь сможет выбирать категории.Кнопка со скрытым меню iPhone

Как я могу это достичь?

+0

Вы хотите добиться чего-то подобного? http://cocoacontrols.com/platforms/ios/controls/camera-flash-toggle – victorash

ответ

1

Вам необходимо создать UIButton и добавить его в качестве подзаголовка вашего UIView (например, в методе viewDidLoad, если ваше представление связано с UIViewController).

UIButton *showButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
showButton.frame = CGRectMake(500, 20, 150, 44); // hardcoded frame, not quite elegant but works if you know the dimension of your superview 
[showButton setTitle:@"Show Categories" forState:UIControlStateNormal]; 
// add target and actions 
[showButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; 
// add to a superview, your parent view 
[superView addSubview:showButton]; 

Затем добавить метод, называемый buttonClicked: который принимает идентификатор параметра (обычно отправителя, showButton в данном случае).

-(void)buttonClicked:(id)sender 
{ 
// visualize categories 
} 

Для визуализации категорий, которые вы можете следовать двумя различными способами:

  1. Представить UITableViewController внутри UIPopoverController (только для IPad устройства)
  2. Показать контроллер модальное, представляющий собой UITableViewController (как IPad и iPhone).

UITableViewController позволяет вам иметь список категорий, а затем выбрать один из них.

P.S. Проверьте код в XCode, потому что я написал вручную (без XCode)

+0

thanx flex, Как насчет идеи представления ячеек, в которой одна строка будет видна, и нажатие на эту строку покажет скрытый строки для выбора категорий? это будет работать. Я пытаюсь реализовать ваше предложение – AppDeveloper

+0

Я должен сделать это только для IPHONE – AppDeveloper

+0

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

Смежные вопросы