- 发布:2017-09-12 22:20
- 更新:2017-09-15 10:42
- 阅读:1827
getTitleNView()拿到的是null
测试环境macOS Sierra,iPhone 6s plus模拟器
HBuilder 8.8.0.201706142254
你好,mui.openWindowWithTitle() 这个方法是通过原生绘制的原理绘制的标题头,所以目前是不能通过getTitleNView() 方法拿到,不过你可以使用getSubNViews()拿到当前webview的所有view控件数组,此时的第一个数组元素就是titleNView。
另外说明一下:titleNView就是一个特别的subNView,所以5+提供了单独的方法获取,但是也可以通过getSubNViews 从中获取的
mui.openWindowWithTitle()封装原理就是通过plus.nativeObj.View绘制的,如果你想实现打开标题头这样的操作,也可以通过
plus.webview.create( url, id, {
titleNView: {
titleText:'test'
}
} )
这样的5+方法直接实现,此时你通过getTitleNView便可以获取到该view控件
getNavigationbar() 是老写法和 gitTitleNView() 是新写法,目前都可以使用的
-
月球上的人 (作者)
我又看了一下mui.openWindow(), mui.openWindowWithTitle()和plus.webview.create()这三个方法.
在openWindow()和plus.webview.create()这两个方法中都是通过设置styles下titleNView来设置导航栏的,所以我想你上面回复我说的openWindowWithTitle()是通过封装plus.webview.create()方法来实现的这句话是不是有点问题,是不是其实是openWindow()方法才是封装plus.webview.create()这个方法来实现的.
另外一点,用openWindowWithTitle()来打开界面是不是就相当于使用了iOS中UINavigationController嵌套了一层,用的是原生导航栏,而另外两个方法则是用UIView来自己实现了一个导航栏?2017-09-16 16:16
-
我说的是openWindowWithTitle()是通过plus.nativeObj.View实现的,不是plus.webview.create()实现。
2017-09-18 17:42
月球上的人 (作者)
明白了,谢谢. 然后你们文档里还有很多地方用的是getNavigationBar()方法,建议升级一下文档
2017-09-13 15:48
n***@gmail.com
mui文档还是5+文档?
2017-09-13 20:46
月球上的人 (作者)
回复 n***@gmail.com:出错的位置我写在下面的评论里了
2017-09-14 18:22