navigator 模块

调用文档中的 push 接口,会进入新的界面,但不会显示原生导航栏。

显示原生导航栏方法(以ios为例)

1 组件添加 dataRole="navbar" 属性

<template>
  <div>
    <div dataRole="navbar"></div>  // 添加dataRole="navbar" 属性
    <div>...</div>
  </div>
</template>
  • WeexSDK WxComponent+Navgation.m 中有段代码
   - (void)_setupNavBarWithStyles:(NSMutableDictionary *)styles attributes:(NSMutableDictionary *)attributes
{
    NSString *dataRole = attributes[@"dataRole"];
    if (dataRole && [dataRole isEqualToString:@"navbar"]) {
        styles[@"visibility"] = @"hidden";
        styles[@"position"] = @"fixed";
        
        self.weexInstance.naviBarStyles = [NSMutableDictionary new];
        
        [self setNavigationBarHidden:NO];
        
        NSString *backgroundColor = styles[@"backgroundColor"];
        [self setNavigationBackgroundColor:[WXConvert UIColor:backgroundColor]];
    }
    ......

2 navigator.setNavBarHidden

      navigator.setNavBarHidden({
          hidden: 0         
        }, event => {         
        })
  • WeexSDK WXNavigatorModule.m 中有很多对外接口的定义。

推荐阅读更多精彩内容

  • 坚持源于热爱,源于热爱的坚持是美好的。2018年,越来越稳定,热爱的事与人越来越清晰。 俗话说“不满足是向上的车轮...
    漠2022漠阅读 79评论 0 0
  • 但这个傻子一直不知道好好照顾自己,有多少次舞台失误,从舞台上摔下来,还继续坚持表演。2013年MAMA,那是他们得...
    咻咻大王阅读 454评论 1 5
  • 借着为群里选管理员的机会,向大家抛出了一个编程游戏,大家踊跃参加,现在分享其中八位朋友的源码,供大家学习交流: 代...
    三月行者阅读 1,482评论 2 4