Я новичок прошивку, как мой проект зависит как навигацию и UITabBar controller.I сделали следующие шаги
UITabBar содержит 4 кнопки и панель навигации содержит 2 кнопки, т.е. является общим для всех экранов 1) сначала я взял контроллер UITabBar и добавил к нему четыре кнопки 2) Для каждой кнопки в UITabBar я добавил контроллер навигации Когда я нажимаю кнопки на вкладке, все виды отображаются хорошо и подходит к кнопкам UITabBar штриховой я столкнулся с проблемой, как показано нижеIOS: Показ UIViewControllers когда UITabBar и UINavigationBar кнопка cliked
предположит, что я нахожусь в UITabBar экрана «A» и я нажал на navigati на кнопке bar я получил экран навигации ex как «Navscreen», что означает, что теперь «A» содержит «Navscreen», когда я нажал кнопку «B» на панели инструментов и вернулся к кнопке UITabBar «A», все еще показывая «Navscreen»
Чтобы избежать подобных случаев в «Navscreen» вид контроллера я добавил код, как показано ниже в окне появится
-(void)tabBarController:(UITabBarController *)tabBarController
didSelectViewController:(UIViewController *)viewController
{
NSUInteger indexOfTab = [tabBarController.viewControllers
indexOfObject:viewController];
NSLog(@"Tab index = %u (%u)", indexOfTab);
if (indexOfTab==0)
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main"
bundle:nil];
FirstViewController *firstview =
(FirstViewController *) [storyboard
instantiateViewControllerWithIdentifier:@"home"];
[self.navigationController pushViewController:firstview
animated:YES];
}
else if (indexOfTab==1)
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main"
bundle:nil];
secondviewcontroller *secondview =
(secondviewcontroller *) [storyboard
instantiateViewControllerWithIdentifier:@"Medremainder"];
[self.navigationController pushViewController:secondview animated:NO];
}
if (indexOfTab==2)
{
UIStoryboard *storyboard = [UIStoryboard
storyboardWithName:@"Main" bundle:nil];
mymedView *mymed_view =
(mymedView *) [storyboard
instantiateViewControllerWithIdentifier:@"mymed"];
[self.navigationController pushViewController:mymed_view
animated:NO];
}
if (indexOfTab==3)
{
UIStoryboard *storyboard = [UIStoryboard
storyboardWithName:@"Main" bundle:nil];
Event_view *event_view =
(Event_view *) [storyboard
instantiateViewControllerWithIdentifier:@"Event_view"];
[self.navigationController pushViewController:event_view
animated:NO];
}
}
Но в этом случае нажмите «Navscreen» его работы, и когда я нажимаю UITabBar " B "iam может получить экран UITabBar. Если я снова нажму UITabBar" A ", я смогу увидеть« A », и когда я нажму кнопку UITabBar« B », произойдет сбой. AS я новичок в ios, пожалуйста, помогите мне с возможным решение, если я сделаю что-нибудь неправильное заявление предлагайте правильные решения.
Ваше описание проблемы не очень чистый, но я подозреваю, что вы пытаетесь использовать TabBar и навигации контроллеры в неправильном направлении. Проверьте https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/CombiningViewControllers.html –
да IAM, используя обе навигационные и TabBar контроллеры. мне нужно, чтобы получить tabscrees, когда я нажал на кнопки TabBar щелкает .Но некоторые из экранов, показывающими Previouly используются Панель навигации экранов, что моя проблема –