• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 【React Native开发】React Native控件之ToolbarAndroid工具栏控件讲解以及使用(15)

【React Native开发】React Native控件之ToolbarAndroid工具栏控件讲解以及使用(15)

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了【React Native开发】React Native控件之ToolbarAndroid工具栏控件讲解以及使用(15)等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

【React Native开发】React Native控件之ToolbarAndroid工具栏控件讲解以及使用(15)


(一)前言

今天我们一起来看一下工具栏控件ToolBarAndroid的介绍完全解析以及最佳实践。

刚创建的React Native技术交流群(282693535),欢迎各位大牛,React Native技术爱好者加入交流!同时博客左侧欢迎微信扫描关注订阅号,移动技术干货,精彩文章技术推送!

该ToolBarAndroid组件进行封装了Android平台中的ToolBar组件(只适用于Android平台)。一个ToolBar组件可以显示一个Logo图标以及一些导航图片(例如:菜单功能按钮),一个标题以及副标题还有一系列功能的列表。标题和副标题是上下位置。所以logo图标和导航图标显示在左边,标题和副标题显示在中间,功能列表显示在右边。

【注】如果Toolbar只有一个子节点,该会显示在标题和功能列表中间。

特别声明:尽管Toolbar的Logo图标,导航图标以及功能列表的图标支持加载远程的图片(网络图片等)。不过该加载远程图片资源只是在Dev(开发模式)模式中支持。但是在Release(发布模式)模式中,你应该只能使用应用中的资源来进行渲染。例如使用request('./some_icon.png')会自动帮我进行加载资源。所以我们在开发中只要不直接使用{uri:'http://...'}就一般没啥问题啦。

(二)官方实例代码

这边我们大家看一下官方提供的一个ToolBar使用的很简单的例子:

render: function() {
  return (
    
  )
},
onActionSelected:function(position) {
  if (position === 0) { // index of 'Settings'
    showSettings();
  }
}

该代码添加了一个ToolBarAndroid组件,其中加入Logo图标,标题信息,以及功能列表信息,当功能被点击的时候进行响应相关方法。具体关于使用实例会在下面详细进行讲解。

(三)属性方法(只介绍通用以及Android平台)

3.1.View相关属性样式全部继承(例如:宽和高,背景颜色,边距等相关属性样式)

3.2.actions 设置功能列表信息属性 传入的参数信息为: [{title: string, icon: optionalImageSource, show: enum('always','ifRoom', 'never'), showWithText: bool}] 进行设置功能菜单中的可用的相关功能。该会在显示在组件的右侧(显示方式为图标或者文字),如果界面上面区域已经放不下了,该会加入到隐藏的菜单中(弹出进行显示)。该属性的值是一组对象数组,每一个对象包括以下以下一些参数:

  • title: 必须的,该功能的标题
  • icon: 功能的图标 采用该代码进行获取 require('./some_icon.png')
  • show: 该设置图标直接显示,还是隐藏或者显示在弹出菜单中。always代表总是显示,ifRoom代表如果Bar中控件够进行显示,或者never代表使用直接不显示
  • showWithText boolean 进行设置图标旁边是否要显示标题信息

    3.3.contentInSetEnd number 该用于设置ToolBar的右边和屏幕的右边缘的间距。

    3.4.contentInsetStart number 该用于设置ToolBar的左边和屏幕的右边缘的间距。

    3.5.logo optionalImageSource 可选图片资源 用于设置Toolbar的Logo图标

    3.6.navIcon optionalImageSource 可选图片资源 用于设置导航图标

    3.7.onActionSelectedfunction方法 当我们的功能被选中的时候回调方法。该方法只会传入唯一一个参数:点击功能在功能列表中的索引信息

    3.8.onIconClickedfunction 当图标被选中的时候回调方法

    3.9.overflowIcon optionalImageSource 可选图片资源 设置功能列表中弹出菜单中的图标

    3.10. rtl 设置toolbar中的功能顺序是从右到左(RTL:Right To Left)。为了让该效果生效,你必须在Android应用中的AndroidMainifest.xml中的application节点中添加android:supportsRtl="true",然后在你的主Activity(例如:MainActivity)的onCreate方法中调用如下代码:setLayoutDirection(LayoutDirection.RTL)。

    3.11.subtitle string 设置toolbar的副标题

    3.12.subtitleColor color 设置设置toolbar的副标题颜色

    3.13.title string 设置toolbar标题

    3.14.titleColor color 设置toolbar的标题颜色

    (四)ToolbarAndroid实例讲解

    4.1.实例只是简单的显示Toolbar的标题/副标题以及功能列表,导航图标,实例代码如下:

     

    'use strict';
    import React, {
      AppRegistry,
      Component,
      StyleSheet,
      Text,
      View,
    } from'react-native';
    var ToolbarAndroid =require('ToolbarAndroid');
    class ToolBarAndroidDemo extends Component {
      render() {
        return (
           
        );
      }
    }
    var toolbarActions =[
      {title: 'Create', icon:require('./ic_create_black_48dp.png'), show: 'always'},
      {title: 'Filter'},
      {title: 'Settings', icon:require('./ic_settings_black_48dp.png'), show: 'always'},
    ];
    const styles =StyleSheet.create({
      toolbar: {
        backgroundColor: '#e9eaed',
        height: 56,
      },
    });
    AppRegistry.registerComponent('ToolBarAndroidDemo',() => ToolBarAndroidDemo);

     

    运行效果如下:

    \

    4.2.只设置标题以及功能列表,无导航图标效果,代码如下:

    'use strict';
    import React, {
      AppRegistry,
      Component,
      StyleSheet,
      View,
    } from'react-native';
    var ToolbarAndroid =require('ToolbarAndroid');
    class ToolBarAndroidDemo extends Component {
      render() {
        return (
           
        );
      }
    }
    var toolbarActions =[
      {title: 'Create', icon:require('./ic_create_black_48dp.png'), show: 'always'},
      {title: 'Filter'},
      {title: 'Settings', icon:require('./ic_settings_black_48dp.png'), show: 'always'},
    ];
    const styles =StyleSheet.create({
      toolbar: {
        backgroundColor: '#e9eaed',
        height: 56,
      },
    });
    AppRegistry.registerComponent('ToolBarAndroidDemo',() => ToolBarAndroidDemo);

     

    运行效果如下:

    \

    4.3.只存在导航图标,Logo图标以及功能列表实例代码如下:

     

    'use strict';
    import React, {
      AppRegistry,
      Component,
      StyleSheet,
      View,
    } from'react-native';
    var ToolbarAndroid =require('ToolbarAndroid');
    class ToolBarAndroidDemo extends Component {
      render() {
        return (
           
            
        );
      }
    }
    var toolbarActions =[
      {title: 'Create', icon:require('./ic_create_black_48dp.png'), show: 'always'},
      {title: 'Filter'},
      {title: 'Settings', icon:require('./ic_settings_black_48dp.png'), show: 'always'},
    ];
    const styles =StyleSheet.create({
      toolbar: {
        backgroundColor: '#e9eaed',
        height: 56,
      },
    });
    AppRegistry.registerComponent('ToolBarAndroidDemo',() => ToolBarAndroidDemo);

     

    运行效果如下:

    \

    4.4.最后讲一个知识点就是ToolbarAndroid组件还支持组件的嵌套,我们来看一个实例ToolbarAndroid嵌套SwitchAndroid组件的例子,功能代码如下:

    'use strict';
    import React, {
      AppRegistry,
      Component,
      StyleSheet,
      View,
    } from'react-native';
    var ToolbarAndroid =require('ToolbarAndroid');
    var SwitchAndroid =require('SwitchAndroid');
    class ToolBarAndroidDemo extends Component {
      render() {
        return (
           
                
            
        );
      }
    }
    var toolbarActions =[
      {title: 'Create', icon:require('./ic_create_black_48dp.png'), show: 'always'},
      {title: 'Filter'},
      {title: 'Settings', icon:require('./ic_settings_black_48dp.png'), show: 'always'},
    ];
    const styles =StyleSheet.create({
      toolbar: {
        backgroundColor: '#e9eaed&
    
    
    
     
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-26【React Native开发】React Native控件之ToolbarAndroid工具栏控件讲解以及使用(15)
  • 2017-05-26Android程序中--不能改变的事情,android程序--改变
  • 2017-05-26AlertDialog创建6种对话框的用法
  • 2017-05-26RecyclerView 结合 CardView 使用(二),recyclerview使用
  • 2017-05-26Android之SQLite数据存储,androidsqlite
  • 2017-05-26单机搭建Android开发环境(五),单机搭建android开发
  • 2017-05-26Android Studio 2.1 Preview有那些更新内容
  • 2017-05-26继承ViewGroup学习onMeasure()和onLayout()方法,viewgrouponmeasure
  • 2017-05-26匿名社交1--登陆,匿名社交1--
  • 2017-05-26我的android学习经历5,android学习经历5

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 使用phonegap播放音频,phonegap播放音频
    • andriod 获得应用程序名称,andriod应用程序
    • win通过dos配置注册列表
    • 粗暴的解释Android与蓝牙Ble之间的通信,android蓝牙ble
    • 我的投资3--热门理财,投资3--热门理财
    • Android MeasuerSpce的由来及使用
    • xUtils3,xutils3github
    • Android自定义ViewGroup打造各种风格的SlidingMenu
    • DrawerLayout的openDrawer()和closeDrawer()方法,drawerlayout
    • 安卓下如何使用JUnit进行软件测试,安卓junit

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有