【问题标题】:Bottom bar got hidden when pushed from view controller从视图控制器推送时底栏隐藏
【发布时间】:2017-05-24 11:12:06
【问题描述】:

从另一个视图控制器推送时如何显示底栏?

Viewcontroller.m

ReminderViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"ReminderViewController"];
        [self.navigationController pushViewController:vc animated:YES];

viewcontroller 不包含任何标签栏,但ReminderViewController 包含标签栏。但是,当它被推送时,它并没有在底部显示标签栏。我推错了吗?

【问题讨论】:

  • 你需要将 tabbar 设置为 rootViewController 而不是 push 。

标签: ios objective-c


【解决方案1】:

根据您的命名 - “ReminderViewController” - 听起来您正在加载和推送 标签栏控制器中的第一个视图控制器,而不是标签栏控制器本身.

您需要对标签栏控制器进行子类化。它不需要任何特殊的代码......可以像这样简单:

//  MyTabBarViewController.h
#import <UIKit/UIKit.h>

@interface MyTabBarViewController : UITabBarController
@end

//  MyTabBarViewController.m
#import "MyTabBarViewController.h"

@interface MyTabBarViewController ()
@end

@implementation MyTabBarViewController
@end

然后,加载并推送您的标签栏控制器,而不是第一个标签的视图:

    MyTabBarViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"MyTabBarViewController"];
    [self.navigationController pushViewController:vc animated:YES];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    • 1970-01-01
    • 2014-02-21
    相关资源
    最近更新 更多