Ios 导航栏未显示在脚本中的UItableviewcontroller中

Ios 导航栏未显示在脚本中的UItableviewcontroller中,ios,xcode,uinavigationcontroller,storyboard,uitableview,Ios,Xcode,Uinavigationcontroller,Storyboard,Uitableview,我创建了一个UICollectionviewcontroller视图并嵌入了一个UINavigationcontroller,然后我在导航栏中创建了一个按钮。我再次创建了一个UITableviewcontroller,我也在其中嵌入了一个UINavigationcontroller,当我单击UICollectionview导航栏中的按钮时,它会显示UITableviewcontroller到目前为止是正常的,但在此之后,UITableview控制器中的导航栏根本不显示。请帮助我 尝试以下代码将导

我创建了一个UICollectionviewcontroller视图并嵌入了一个UINavigationcontroller,然后我在导航栏中创建了一个按钮。我再次创建了一个UITableviewcontroller,我也在其中嵌入了一个UINavigationcontroller,当我单击UICollectionview导航栏中的按钮时,它会显示UITableviewcontroller到目前为止是正常的,但在此之后,UITableview控制器中的导航栏根本不显示。请帮助我


尝试以下代码将导航栏设置为不隐藏:

-(void) viewWillAppear:(BOOL)animated {
[[self navigationController] setNavigationBarHidden:NO animated:YES];
}

祝您好运

尝试以下代码,将导航栏设置为不隐藏:

-(void) viewWillAppear:(BOOL)animated {
[[self navigationController] setNavigationBarHidden:NO animated:YES];
}

祝你好运

根据苹果文档,这不会显示导航控制器。为了显示导航控制器,您需要先实例化一个导航控制器,然后加载表视图控制器,如下所示:

LTBaseTableViewController *viewController = [[LTBaseTableViewController alloc] initWithStyle:UITableViewStylePlain];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
[self.window setRootViewController:navigationController];

根据苹果文档,这不会显示导航控制器。为了显示导航控制器,您需要先实例化一个导航控制器,然后加载表视图控制器,如下所示:

LTBaseTableViewController *viewController = [[LTBaseTableViewController alloc] initWithStyle:UITableViewStylePlain];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
[self.window setRootViewController:navigationController];

我也为此挣扎。通过添加导航控制器(如

中所定义)最终解决了这个问题,我也很难做到这一点。最终,除了@barryjones解决方案之外,您还可以使用导航控制器直接推送一个表视图控制器,如

中所定义

[self.navigationController pushViewController:yourTableViewController animated:YES];

除了@barryjones解决方案外,还可以使用导航控制器直接推送表视图控制器

[self.navigationController pushViewController:yourTableViewController animated:YES];

除了以上的答案,我还以类似的方式在UITabBArController的选项卡之间进行编程移动

我读到的大多数帖子都建议

tabBarController?.selectedIndex = 0
但是,这会造成选项卡栏不再可见的情况。 通过将以下内容添加到AppDelegate.swift中的类中,最终解决了此问题

var tabBarController: UITabBarController?
然后在AppDelegate中,我修改了didFinishLaunchingWithOptions,如下所示:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    tabBarController = window?.rootViewController as! UITabBarController
    return true
}
然后,可以在各种视图控制器内的任意位置使用以下行

tabBarController?.selectedIndex = 0

除了以上的答案,我还以类似的方式在UITabBArController的选项卡之间进行编程移动

我读到的大多数帖子都建议

tabBarController?.selectedIndex = 0
但是,这会造成选项卡栏不再可见的情况。 通过将以下内容添加到AppDelegate.swift中的类中,最终解决了此问题

var tabBarController: UITabBarController?
然后在AppDelegate中,我修改了didFinishLaunchingWithOptions,如下所示:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    tabBarController = window?.rootViewController as! UITabBarController
    return true
}
然后,可以在各种视图控制器内的任意位置使用以下行

tabBarController?.selectedIndex = 0

哪种代码?我使用故事板,所以我嵌入了一个UINavigationController,告诉我们故事板,然后在你的问题中显示哪种代码?我使用故事板,所以我嵌入了一个UINavigationController显示给我们故事板,然后在你的问题中,所有书籍控制器和表视图之间的分段在哪里?不需要我编程移动所有书籍控制器和表视图之间的分段在哪里?不需要我编程移动