zoukankan      html  css  js  c++  java
  • RN控件之DrawerLayoutAndroid导航栏

     1 /**
     2  * Sample React Native App
     3  * https://github.com/facebook/react-native
     4  */
     5 'use strict';
     6 import React, {
     7   AppRegistry,
     8   Component,
     9   StyleSheet,
    10   Text,
    11   View,
    12   DrawerLayoutAndroid
    13 } from 'react-native';
    14 
    15 class MyProject2 extends Component {
    16   render() {
    17       var navigationView =(
    18           <View style={{flex:1,backgroundColor:'blue'}}>
    19               <Text style={{margin:10,color:'#fff',fontSize:15,textAlign:'center'}}>
    20                   我是导航功能栏标题
    21               </Text>
    22               <Text style={{marginTop:10,marginLeft:20,color:'#fff',fontSize:15,textAlign:'left'}}>
    23                   1.功能1
    24               </Text>
    25               <Text style={{marginTop:10,marginLeft:20,color:'#fff',fontSize:15,textAlign:'left'}}>
    26                   2.功能2
    27               </Text>
    28           </View>
    29       )
    30       return(
    31           <DrawerLayoutAndroid
    32               drawerWidth={150} drawerPosition={DrawerLayoutAndroid.positions.left}
    33               renderNavigationView={() => navigationView}>
    34               <View style={{flex:1,alignItems:'center'}}>
    35                   <Text style={{margin:10,fontSize:15,textAlign:'right'}}>
    36                         我是主布局内容
    37                   </Text>
    38               </View>
    39           </DrawerLayoutAndroid>
    40       );
    41 
    42   }
    43 }
    44 AppRegistry.registerComponent('MyProject2', () => MyProject2);
    View Code

    一.DrawerLayoutAndroid

      1.该组件封装了Android平台的DrawerLayout空间(只限于Android平台).该抽屉页面(经常用于导航页面)是通过reanderNavigationView进行渲染的.该DrawerlayoutAndroid中的子视图会变成主视图(主要用于放置内容)

      2.属性

        (1)View的属性使用,继承了View控件的属性信息(例如:宽和高,背景颜色,边距等相关属性样式)

        (2)drawerPosition:参数为枚举类型(DrawerConst.DrawerPosition.Left,DrawerConst.DrawerPosition.Right)

          用来指定导航菜单从那一侧滑动出来,两个参数:

            DrawerLayoutAndroid.positions.Left和DrawerLaoutAndroid.positions.Right

        (3)drawerWidth:指定导航菜单视图的宽度,也就是说该侧面导航视图可以从屏幕边缘拖拽到屏幕的宽度

        (4)keyboardDismissMode:参数为枚举类型('none','on-drag')进行指定在导航视图拖拽的过程中是否要隐藏键盘

            none:(默认值),默认不会隐藏键盘

            on-drag:当拖拽开始的时候进行隐藏键盘

        (5)onDrawerClose(function):当导航视图被关闭后进行回调该方法

        (6)onDrawerOpen(function):当导航视图被打开后进行回调该方法

        (7)onDrawerSlide(function):当导航视图和用户进行交互的时候调用该方法

        (8)onDrawerStateChanged(function):当导航视图的状态发生变化的时候调用该方法.有以下三种状态:

            idle(空闲):表示导航视图上面没有任何交互状态

            dragging(正在拖拽中):表示用户正在和导航视图产生交互动作

            setting(暂停-刚刚结束):表示用户刚刚结束和导航视图的交互动作.当前导航视图正在打开或者关闭拖拽滑动动画效果

        (9)renderNavigationView(function):该方法进行渲染一个导航抽屉的视图(用于用户从屏幕边缘拖拽出来)

  • 相关阅读:
    遇到容易忘记的问题(二)
    遇到容易忘记的问题(三)
    遇到容易忘记的问题(一)
    UC浏览器input文本框输入文字回车键自动提交
    弹框在当前屏幕完全居中的方法
    遇到的浏览器问题总结
    HTML常用的特殊符号&前端使用的标点符号
    小程序里的页面跳转
    移除所有子视图
    UIView用户事件响应
  • 原文地址:https://www.cnblogs.com/ZSG-DoBestMe/p/5292471.html
Copyright © 2011-2022 走看看