Я пытаюсь создать объект типа picker
, когда нажата одна из button
на UITabBar
. Если вы посмотрите на приложение iphone tumblrs, вы увидите, что я имею в виду. Я предполагаю, что они представляют UIView
над любым viewcontroller
пользователем в данный момент. Как мне это сделать?Отображение вида из UITabBar
ответ
Этот вопрос мне больше напоминает панель кнопок вопрос настраиваемой вкладки, я думаю, что Tumblr сделал это добавить пользовательскую кнопку в середине панели вкладок, и представить модальный контроллер представления, когда нажмите что кнопка.
Я сделал очень быструю проверку в своем тестовом проекте, некоторые номера жестко закодированы для целей тестирования, вам, возможно, придется немного подкорректировать это.
Добавить пользовательскую кнопку в середине панели вкладок. (Добавить следующий код в
viewWillAppear
первого контроллера представления)- (void)viewWillAppear:(BOOL)animated { UIImage *buttonImage = [UIImage imageNamed:@"classic-batman-logo.jpg"]; UIImage *highlightImage = [UIImage imageNamed:@"classic-batman-logo.jpg"]; UIButton* button = [UIButton buttonWithType:UIButtonTypeCustom]; button.frame = CGRectMake(0.0, 0.0, 60, 50); [button setBackgroundImage:buttonImage forState:UIControlStateNormal]; [button setBackgroundImage:highlightImage forState:UIControlStateHighlighted]; button.center = CGPointMake(self.tabBarController.tabBar.center.x , 30); [button addTarget:self action:@selector(centerButtonClicked) forControlEvents:UIControlEventTouchUpInside]; [self.tabBarController.tabBar addSubview:button]; }
затем просто представить свой целевой контроллер представления в функции centerButtonClicked
- (void)centerButtonClicked { UIViewController *vc = [[UIViewController alloc]init]; vc.view.backgroundColor = [UIColor redColor]; [self presentViewController:vc animated:YES completion:nil]; }
Это просто тесты 10 минут я было бы, должно быть:
Может быть, есть несколько вещей, которые вы хотите обратить внимание:
изменение жесткого закодированы точки центра, когда вы реализовать свой собственный код,
и даже лучше, вы можете создать собственный TabBar с этой центральной кнопкой и настройте метод делегата для этой функции нажатия кнопки. Поэтому каждый раз, когда вы нажимаете эту кнопку с другого контроллера, у него будет другое поведение.
Надеюсь, что вы получите некоторое приблизительное представление о том, как этого достичь.
- 1. Изменить UITabBar выбранного вида программен
- 2. Проблема внешнего вида UITabBar + NSThreads
- 3. Наличие UITabBar при отображении вида не на UITabBar?
- 4. Отображение UITabBar в отдельном виде
- 5. MEF - Отображение вида из другого представления
- 6. Отображение изображения из модели вида. MVC
- 7. Отображение вида из произвольного метода на iPhone
- 8. Отображение UITabBar при нажатии на UIViewController
- 9. Отображение вида с заголовком
- 10. Отображение вида onPause активности андроида
- 11. UITabBar view
- 12. UITabBar padding
- 13. Условно отображение частей моего вида
- 14. Android: Отображение вида на ViewCard
- 15. Добавление UITabBar
- 16. UITabbar Controller
- 17. UITabBar не корректно обновляет ориентацию одного контроллера вида
- 18. Когда UITabbar является полупрозрачный и UIViewController не распространяется за TabBar, то uitabbar кажется, покрытие черного вида
- 19. UITabBar - два вида (нить) одинаковый класс с использованием раскадровки
- 20. Замените UITabBar на UIToolBar
- 21. Отображение вида разделителя в CollectionView
- 22. Отображение вида сетки вместо карты
- 23. Отображение нового вида в IOS
- 24. UITabBar iAd Баннер Не правильно загружается после изменения вида
- 25. Изменение текущего вида в приложении uitabbar iOS iPad
- 26. Показывать модальный вид из кнопки UITabBar
- 27. Инициализация свойства UIViewController из UITabBar
- 28. Почему UITabBar считается Modal?
- 29. Настоящий UIView поверх UITabBar
- 30. Пользовательские иконки UITabBar iOS
Таким образом, основная проблема заключается в том, что я хотел бы, чтобы фон для отображаемого контроллера представления был размытым над контроллером представления, поэтому был бы размытый слой поверх исходного контроллера представления с помощью кнопок сверху. Если вы посмотрите на тумблер, на который вы нажимаете, это фон для кнопок – matthew
, как я это делал раньше, снимает снимок вашего текущего вида, размывает его, переходит к представлению «собирается быть представленным» контроллер в качестве фонового изображения. убейте настоящую анимацию, поэтому пользователи не поймут, что это поддельное размытие. и добавьте некоторую анимацию в содержимое «собирающегося быть представленным» контроллером представлений .. но, честно говоря, мы убиваем панель вкладок в новой версии, таба выглядит, по-старому, в соответствии с нашими дизайнерами ... –
Хотя панель вкладок может быть немного старомодной сейчас, я никогда не был поклонником слайда с бокового контроллера, например, используемого facebook. Я также думаю, что TabBar отлично смотрится с размытием ios 7 и прекрасно дополняет UINavigationBar. – matthew