美文网首页我爱编程
React Native StatusBar的使用

React Native StatusBar的使用

作者: 萤火虫叔叔 | 来源:发表于2018-05-31 14:28 被阅读1657次
    1. 什么是状态栏,状态栏在iOS和Android上有哪些不同?

    状态栏是指app最上边展示时间、信号等信息的一览,如下图被框住的地方所示:


    支付宝的StatusBar示意图
    • 在Android中,这一栏默认显示,app的内容会紧接着显示在状态栏的下方。
    • 在iOS中,这一栏也是默认显示,但是app的内容会顶到屏幕最上方,状态栏会浮现在内容的上方。
    2. StatusBar的属性

    React Native提供了一个组件——StatusBar用于控制状态栏,包括颜色,动画效果,显示和隐藏等。
    StatusBar在iOS和Android上可供设置的属性稍有不同。

    2.1 通用属性
    • animated
      设置当状态栏的状态发生变化时,是否需要加入动画。
      动画支持 backgroundColorbarStylehidden 属性的变化。
    • hidden
      设置状态栏是否隐藏。
    2.2 Android专用属性
    • backgroundColor
      Android 设备上状态栏的背景颜色
    <StatusBar backgroundColor={'blue'} />
    
    • translucent
      设置状态栏是否为透明,当状态栏的值为true的时候,应用将会在状态栏下面进行绘制显示。这样在 Android 平台上面就是沉浸式的效果,可以达到 Android 和 iOS 应用显示效果的一致性。该值常常同配置半透明效果的状态栏颜色一起使用。
    • StatusBar.currentHeight
      React Native 在 Android 平台为 StatusBar 组件提供了一个静态常量 currentHeight,我们可以通过读取这个常量来得到 Android 手机状态栏的高度。
    2.3 iOS专用属性
    • barStyle
      用于设置状态栏文字的颜色,其值是枚举类型:

      • default:黑色文字(默认) => dark-content
      • light-content:白色文字
    • networkActivityIndicatorVisible
      设定网络活动指示器(就是那个菊花)是否显示在状态栏

    • showHideTransition
      通过hidden属性来显示或隐藏状态栏时所使用的动画效果,有两种选择:fade(默认值)、slide

    3. SatusBar的使用示例
    import { StatusBar } from 'react-native'
    //...省略其他代码
    render() {
      return (
      <View>
        <StatusBar
          hidden={true}
          />
      </View>
      )
    }
    

    欢迎加我微信,拉进群交流哦!


    微信二维码

    相关文章

      网友评论

        本文标题:React Native StatusBar的使用

        本文链接:https://www.haomeiwen.com/subject/uxyqsftx.html