从不同的视图中删除左按钮

Posted

技术标签:

【中文标题】从不同的视图中删除左按钮【英文标题】:Remove Left Button from Different View 【发布时间】:2014-01-12 16:53:40 【问题描述】:

是否可以在viewController A 中运行一个方法,该方法在viewController B 中隐藏后退按钮,但在viewController C 中却没有?

示例:视图 A 是一个“隐藏”屏幕,它只为应用初始化一些内容。视图 B 是 Web 视图,视图 C 是菜单。我想通过调用视图 A 中的方法从视图 B 中删除后退按钮。

如果不在我尝试加载的视图控制器中实现以下内容,这是否可能:

self.navigationItem.hidesBackButton = YES;

谢谢。

【问题讨论】:

【参考方案1】:

尝试在每个控制器的viewDidLoad 方法中执行此操作

self.navigationItem.hidesBackButton = YES;

但是,如果您想以 OOPS 方式完成此操作,请创建一个 baseViewController 并从 baseViewController 子类化其他控制器。

baseViewController 上创建一个方法

-(void)showBackButton:(Bool)show 

     self.navigationItem.hidesBackButton = !show;


然后从您的基地的viewDidLoad 拨打此电话。这将使按钮返回到由“显示”值表示的状态。然后在任何你想启用或禁用它的地方,只需调用相应控制器的 viewDidLoad 即可。

希望对您有所帮助。

【讨论】:

以上是关于从不同的视图中删除左按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何从不同的表和视图中删除/插入

从 Rails 的视图中删除/创建单独的样式

向左滑动时未剪切子视图以删除 UITableViewCell

春季安全。不同角色的同一页面的不同视图,可能吗?

UI测试滑动删除表格视图单元格

不同的 segues 去同一个 ui 视图而不是不同的视图