自定义导航控制器在出栈的时候怎样清楚右侧按钮?

来源:互联网 发布:黄金分析软件app 编辑:程序博客网 时间:2024/05/16 09:58


如题:今天在项目中碰见个问题,导航控制器是自定义的,并且导航控制器也是全局的,也就是说,所有的导航栏公用1NavigationBar,要在返回上级控制器的时候,清楚右侧的按钮。找了好多资料。但是程序一直崩溃。后来,自己就不断的尝试,最后,终于搞定。代码如下

代码说明:

第一步:首先取得导航控制器的viewControllers.count属性

  int indexprevious=[[self viewControllers]count];



第二步:利用for循环找到最后一个按钮。

  for (int i=0; i<[_rightviews count]; i++) {

        

        UIButton*button=[_rightviews objectAtIndex:i];

        if(indexprevious==button.tag){

            [button removeFromSuperview];

            [_rightviews removeObjectAtIndex:[_rightviews indexOfObject:button]];

        }

第三部:将那个按钮从父视图上移除。

注:代码中的_rightviews为可变数组,里面保存着所有navigationBar的子控件。

0 0
原创粉丝点击