开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第17天,点击查看活动详情
一、Switch
跨平台通用的“开关”组件。
注意这是一个“受控组件”(controlled component)。你必须使用onValueChange
回调来更新value
属性以响应用户的操作。如果不更新value
属性,组件只会按一开始给定的value
值来渲染且保持不变,看上去就像完全点不动。
属性:
-
disabled
:如果为true
则禁用此组件的交互。 -
onChange
:当值改变的时候调用此回调函数,参数为事件。 -
onValueChange
:当值改变的时候调用此回调函数,参数为新的值 -
onValueChange
:当值改变的时候调用此回调函数,参数为新的值 -
trackColor
:关闭状态时的边框颜色(iOS)或背景颜色(Android)。
二、StatusBar
用于控制应用状态栏的组件。状态栏是区域,通常位于屏幕顶部,显示当前时间、Wi-Fi 和蜂窝网络信息、电池电量和/或其他状态图标。
命令式 API
对于使用组件不理想的情况,还有一个命令式 API 作为组件上的静态函数公开。但是,不建议将静态 API 和组件用于同一 prop,因为静态 API 设置的任何值都将在下一次渲染中被组件设置的值覆盖
属性:
-
currentHeight
:状态栏的高度,包括槽口高度(如果存在) -
backgroundColor
:状态栏的背景色。 -
barStyle
:设置状态栏文本的颜色 -
hidden
:如果状态栏处于隐藏状态。 -
showHideTransition
:使用道具显示和隐藏状态栏时的过渡效果。 -
translucent
:人造人 如果状态栏是半透明的。当半透明设置为 时,应用将在状态栏下绘制。这在使用半透明状态栏颜色时很有用。true
import { Text, StyleSheet, View,StatusBar,Switch } from 'react-native'
import React, { Component } from 'react'
export default class Nav1 extends Component {
render() {
return (
<View style={[styles.container]}>
<StatusBar
hidden={false}//是否隐藏导航栏
backgroundColor={"red"}//导航栏背景颜色
/>
<Switch
trackColor={{false:"#999",true:"red"}}//背景颜色
thumbColor={"white"}//前面圆圈的颜色
value={false}//是否是打开
onValueChange={this.changeaValue}
/>
</View>
)
}
}
const styles = StyleSheet.create({
container:{
flex:1,
justifyContent:'center',
alignItems:'center'
}
})