1.跳转界面发现TabBar条还显示,我们不想让它显示
在push的时候隐藏底部条,push谁的时候需要隐藏底部条,就找到对应控制器去隐藏
注意点:一定要在Push之前设置
settingVc.hidesBottomBarWhenPushed=YES;
2.导航控制器跳转到下一个界面,默认有返回本界面的按钮
问题:系统的返回按钮不能满足我们的需求
3.我们要自定义一个按钮,来实现项目需求
4.如何修改?
由上一个控制器设置backBarButtonItem
当前控制器的leftBarButtonItem来修改
5.发现自定义返回按钮没有在最左边,如何修改?
通过frame不可以? 控件位置系统设定好了,不能修改frame
可以通过内边距来修改
backButton.contentEdgeInsets=UIEdgeInsetsMake(0, -25,0,0);
6.在项目中,很多地方都需要修改返回按钮,如何一次性修改呢?
思考:通过apparence可以修改
通过apparence修改,要先拿到对应的类,返回按钮对应的类UIBarButtonItem会把多有这个类的按钮都修改成返回按钮,rrightBarButtonItem也会变成返回按钮,不可行
那么我们什么时候需要修改返回按钮? push的时候,那我们拦截push 在里面设置就可以了
在哪里重写push? 在自定义导航控制器里面
注意:重写push方法,一定要调用super push方法 设置返回按钮代码一定要在super push 之前
__func__:方法 获取当前方法在哪个类中调用
我们发现跟控制器也有返回按钮, 这不是我们需要的
我们要判断下是不是跟控制器,跟控制器的话就不设置返回按钮
怎么判断?
通过导航控制器子控制器的个数 个数打印一下就知道怎么设置了