为你的应用提供一种切换屏幕的方式,新创建的屏幕放置在栈顶。
默认情况下,StackNavigator被配置为在iOS和Android上有类似的外观和体验:iOS上新页面从右边划入,Android为从底部淡入。iOS上StackNavigator还可以配置为modal风格,新页面从底部划入。

class MyHomeScreen extends React.Component {  static navigationOptions = {    title: 'Home',  }  render() {    return (      

API 定义

StackNavigator(RouteConfigs, StackNavigatorConfig)

路径配置

路径配置对象为路径名到路径配置的映射,从而告诉navigator当前的路径下展示什么页面。

StackNavigator({  // 每一个新页面都要创建一个这样的实体:  Profile: {    // `ProfileScreen` 是当前页面所要展示的React组件    screen: ProfileScreen,    // 当`ProfileScreen`被StackNavigator加载时, 他会被赋予一个`navigation`属性.    // 可选: deeplink 或 web 应用中使用:    path: 'people/:name',    // The action and route params are extracted from the path.    // 可选: 对当前页重写 `navigationOptions`    navigationOptions: ({navigation}) => ({      title: `${navigation.state.params.name}'s Profile'`,    }),  },  ...MyOtherRoutes,});

StackNavigatorConfig

可选的路由:

  • initialRouteName - 设置堆栈中默认显示屏,必须是配置中的key.
  • initialRouteParams - 初始页面参数
  • navigationOptions - 默认navigation选项
  • paths - 路由设置中的路径覆写的映射

可视选项:

  • mode - 定义渲染和切换页面的风格:

    • card - 使用Android/IOS默认风格,默认选项。
    • modal - iOS从底部划入,Android无效。
  • headerMode - 定义顶部栏如何显示:

    • float - 顶部固定渲染一个header,在切换时播放动画。这是iOS的通常模式。
    • screen - 每一屏都有一个header,在切换中跟随页面淡入淡出. 这是Android的通常模式。
    • none - 不显示header.
  • cardStyle - 用来重写或扩展堆栈中的某一页面。

  • transitionConfig - 定义方法返回一个对象来覆盖默认切屏动画。

  • onTransitionStart - 切屏动画开始的回调。

  • onTransitionEnd - 切屏动画结束的回调。

页面导航选项

title 作为headerTitle和tabBarLabel的备用字符串
header React 控件或方法给HeaderProps返回一个用来显示header的控件,设置为null时隐藏header。
headerTitle header的标题,字符串或控件,默认为场景标题。
headerBackTitle iOS回退键标题,为空时禁用标签。默认为场景标题。
headerTruncatedBackTitleheaderBackTitle不适合屏幕时用来作为回退键的标题,默认为“Back”
headerRight显示在header右边的控件
headerLeft 显示在header左边的控件
headerStyle header的样式对象
headerTitleStyle header标题的样式对象
headerBackTitleStyle header回退键标题的样式对象
headerTintColor header的tint颜色
headerPressColorAndroid Android5.0以上按键按下的涟漪颜色
gesturesEnabled 是否可以使用手势关闭页面,默认iOS为true,Android为false。

Navigator 属性

navigator组件通过StackNavigator(...)获取一下属性:

  • screenProps - 向下传递额外选项,例如:
const SomeStack = StackNavigator({  // config});

例子

See the examples SimpleStack.js and ModalStack.js which you can run locally as part of the NavigationPlayground app.
You can view these examples directly on your phone by visiting our expo demo.

更多相关文章

  1. Android(安卓)mvparms 踩坑
  2. Android传统布局
  3. 新版本Android(安卓)SDK 找不到adb.exe的
  4. contentprovider的学习实例总结
  5. 如何解决:Android中 Error generating final archive: Debug Cert
  6. Android(安卓)7.0 增加以太网设置DHCP和静态IP
  7. Android的页面管理控件ViewFlipper
  8. 自制最新版adt_bundle-windows-x86_64
  9. Bitmap保存图片到指定路径

随机推荐

  1. phonegap系列之API(七)android的本地事件
  2. 简单总结RectF、Rect 和Matrix ,还有Pain
  3. vim+ctags+cscope 打造Android源码阅读工
  4. Linux Kernel and Android(安卓)休眠与唤
  5. Android(安卓)的系统属性(SystemProperti
  6. Android(安卓)Studio使用过程中遇到的问
  7. Android中关于手机震动
  8. android软件工程师/android中间件开发
  9. android微信支付
  10. android 五种 布局文件