Как я могу нажать контроллер панели вкладок после нажатия кнопки в представлении в задаче c? - PullRequest
0 голосов
/ 10 января 2012

У меня есть кнопка в представлении, я хочу добавить контроллер панели вкладок после нажатия кнопки. Как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 11 января 2012

Прежде всего, я не думаю, что использование панели вкладок в качестве подпредставления - хорошая идея

но если вы все еще хотите это сделать, есть много способов обойти

одним из них является использование modalview

сначала вы должны добавить этот код после того, как нажмете кнопку

[button addTarget:self action:@selector(buttonTapped:) forControlEvents:UIControlEventTouchUpInside];

прикрепляет прослушиватель событий к кнопке

затем вы создаете функцию события, чтобы сделать панель вкладок, нажимая

-(void)buttonTapped: (UIButton *)sender
{
        YourTabBarClass *myTabBar = [[YourTabBarClass alloc]initWithNibName:nil bundle:nil];
        myTabBar.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

        [self presentModalViewController:myTabBar animated:YES];
}

и не забудьте импортировать файл заголовка класса tabbarcontroller в ваш .m

#import "YourTabBarClass.h"

надеюсь, это поможет;)

edit: если вам нужно вернуться из представления панели вкладок в предыдущее меню, вы можете добавить кнопку, назначить ей прослушиватель событий и поместить этот код в функцию

[self resignFirstResponder];
    [self dismissModalViewControllerAnimated:YES];
0 голосов
/ 01 мая 2012
-(IBAction)BtnPressed:(id)sender
{
    UIViewController *searchViewController = [[[SearchViewController alloc] initWithNibName:@"SearchViewController" bundle:nil] autorelease];
searchViewController.title = @"Search";

UIViewController *exploreViewController = [[[SearchViewController alloc] initWithNibName:@"ExploreViewController" bundle:nil] autorelease];
exploreViewController.title = @"Explore";

UIViewController *dialerViewController = [[[DialerViewController alloc] initWithNibName:@"DialerViewController" bundle:nil] autorelease];
dialerViewController.title = @"Dialer";

self.tabBarController = [[[UITabBarController alloc]init]autorelease];

self.tabBarController.viewControllers = [NSArray arrayWithObjects:searchViewController, exploreViewController, dialerViewController, nil];

[self presentModalViewController:tabBarController animated:YES];
}

Не забудьте создать соответствующие файлы пера (dialerViewController.xib, SearchViewController.xib, DialerViewController.xib) и сделать эти представления высокими до 411px (это вам)

спасибо

...