UINavigationViewController显示新页面后,隐藏下面的TabBar

1、自定义UINavigationViewController,重写showViewController方法

-(void)showViewController:(UIViewController *)vc sender:(id)sender
{
    vc.hidesBottomBarWhenPushed = YES;

    [super showViewController:vc sender:sender];
}

而不是重写pushViewController方法!!因为第一次加载页面一定会调用pushViewController,

比如说UITabBarViewController添加子控制器addChildViewController后,就会调用pushViewController

2、UITabBarViewController的子控制器,要使用自定义的UINavigationViewController包装一下

2、使用showViewController方法,打开新控制器

3、注意Main.storyboard中如果已经有了对应的View,要在storyboard中设置属性,否则不会调用自定义导航控制器的showViewController方法

hidesBottomBarWhenPushed = YES;
时间: 2024-08-13 19:12:38

UINavigationViewController显示新页面后,隐藏下面的TabBar的相关文章

Push时隐藏下面的TabBar

当构建基于TabBarController的应用时,在进入次级页面时,为了增加可视区域,有可能需要隐藏TabBar.但是很快就会发现,就算我们在viewdidload或者是viewWillAppear中将tabbar的hidden属性设置为YES还是通过改变frame,将它移动到屏幕外面,都会发现它原来所在地方成为了一片黑色,而当前控制器的view并没有如愿以偿地扩展过去.其实非常简单,只要在push的时候,将控制器viewCtrl设置一下: view source 1 viewCtrl.hid

Android 学习心得 页面跳转,不显示新页面信息

原因: 1.新页面的Activity中,public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_httpclintapp); } 红色部分写错了: 2.AndroidMenifest.xml文件中没有添加 <activity android:name="com.Socket.Clint.类名"/>

js跳出iframe,显示新页面

1. <script language="javascript" type="text/javascript"> if (top.location != self.location) top.location = self.location; window.location.href = '/HuiLife/seller/seller.jsp'; </script> Done

Android进入一个新页面,EditText失去焦点并禁止弹出键盘

android在进入一个新页面后,edittext会自动获取焦点并弹出软键盘,这样并不符合用户操作习惯. 在其父控件下,添加如下的属性,就可以完美解决,使其进入页面后不主动获取焦点,并且不弹出软键盘: android:focusable="true"   android:focusableInTouchMode="true" 代码如下: 1 <ScrollView 2 android:layout_width="match_parent"

新页面开发完了~

来单位工作也有5个月了,大半时间在改bug--虽然改bug也能提升能力,但毕竟没有开发新页面来的多. 虽然看了许久的代码,改bug时也有看过.但是真轮到自己开发时还是会懵.写的时候才会不由自主的去研究项目中的代码.以前改bug时毕竟是现有的页面,不需要太深究. 印象最深的是个从一开始到今天下午,难了我3天的一个问题,其实就是自己写的问题了,配的参数多了空格.楞是许久没发现.在旁边同事的提醒下才发现.现在明白为什么修仙之中有"财侣法地"之说了,有同道真是太重要了.真佩服那些自己在家做独立

Atom快速进入全屏后隐藏/恢复显示菜单栏

今天用ATOM进入全屏模式,然后偶尔琢磨这个Atom 1.3.2版本的软件的时候, 在菜单栏里面的View里面, 有一个Toggle Menu Bar的选项,好奇的我点击了下,瞬间,菜单栏就不见了.. 经过一番琢磨,终于想到了方法,其实就是通过键盘的快捷键啦. 注:虽然我用的是atom 1.3.2版本的软件,但是原理是一样的.工具/原料 Atom软件,键盘,鼠标,电脑 方法/步骤 首先,当然是打开ATOM软件啦,进入全屏怎么进?按下键盘上面的快捷键F11是最好的. Atom快速进入全屏后隐藏/恢

微信小程序文字超过行后隐藏并且显示省略号

在小程序开发过程中,经常会遇到一些数据无法在text中完全展示,所以会使用到隐藏相关文字,并在后方加上省略号(...). 只需要在对应的text中设置下面的css就可以了. overflow:hidden; //超出一行文字自动隐藏 text-overflow:ellipsis; //文字隐藏后添加省略号 white-space:nowrap; //强制不换行 不过上面的css只能保证单行显示隐藏,如果想要2,3,n行隐藏呢?这个要求其实也是可以通过css做到的.下面贴出css: display

通过onWindowAttributesChanged和onSystemUiVisibilityChange监听状态栏页面的隐藏与显示、动态显示与隐藏状态栏

最近添加系统功能需要监听状态栏的隐藏与显示,小小研究了下结合资料做下总结: 首先我用这个WindowAttributesChanged方法来监听视频播放页面状态栏的隐藏与显示,通过打印getWindow().getAttributes().flags,获取页面属性,从而来判断状态栏的显示与隐藏,可正常监听! @Override public void onWindowAttributesChanged(LayoutParams params) { super.onWindowAttributes

Swift中使用presentViewController跳转页面后模拟器显示黑屏问题

Swift中使用presentViewController跳转页面后模拟器显示黑屏问题 问题原因 针对storyboard制作页面和手写页面,需要使用两种不同方法进行页面跳转. 解决办法 针对手写页面及storyboard制作页面,使用代码进行页面跳转的两种方法. 对于使用storyboard制作的页面 var sb = UIStoryboard(name: "Main", bundle:nil) var vc = sb.instantiateViewControllerWithIde