Я разработал приложение для ios, используя uitabbar. На вкладке у меня есть некоторый uitableview, приводящий к некоторому uiview. Например:Как поместить представления в uitabbar?
A: кнопка TabBar -> B: Table View -> C: Просмотр по отношению к линии зрения таблицы подводные камни и течения пользователем
Нормальное поведение TabBar является то, что, если я нажимаю до представления, которое я обозначил как «C», затем нажмите другую кнопку «Tabbar» и нажмите кнопку «Tabbar», которую я указал как «A», я нашел открытое представление «C» вместо «B» (таблица вид, вызываемый кнопкой вкладки). Теперь я бы хотел, чтобы вкладка всегда была в первом представлении (в данном случае B, даже если пользователь нажал до C) Для этого я использую этот код в своем appdelegate, чтобы быть уверенным, что он имеет одинаковый даже в случае кнопки «Больше кнопок».
UITabBarController* tabBarController2 = (UITabBarController*)self.window.rootViewController;
if ([viewController isKindOfClass:[UINavigationController class]]) {
[tabBarController2.selectedViewController popToRootViewControllerAnimated:NO];
}
if (tabBarController2.selectedIndex < 4) {
[tabBarController2.moreNavigationController popViewControllerAnimated:NO];
}
Иногда, когда он пытается поп-музыки, приложение падает. Что я делаю не так?
Линия
[tabBarController2.selectedViewController popToRootViewControllerAnimated:NO];
пожары это предупреждение "AppDelegate.m: 27: 10: 'UIViewController' может не реагировать на" popToRootViewControllerAnimated:"
предупреждение означает, что вы пытаетесь вызвать * popToRootViewControllerAnimated * на * UIViewController * вместо * UINavigationController * – rdurand
у вас все еще есть табуляция :) –
yea !! Я был уверен, что проблема решена, но во время тестирования начался сбой .. Это бесконечная история ...: _ ( –