【React Native】文件翻譯閱讀紀錄 - Components(組件) - StatusBar
Facebook Open Source React Native |
StatusBar
用於控制應用狀態欄的組件。
用於導航器
可以同時安裝多個StatusBar組件。道具將按照StatusBar組件的安裝順序合併。一個用例是使用Navigator指定每個路由的狀態欄樣式。
<View>
<StatusBar
backgroundColor="blue"
barStyle="light-content"
/>
<Navigator
initialRoute={{statusBarHidden: true}}
renderScene={(route, navigator) =>
<View>
<StatusBar hidden={route.statusBarHidden} />
...
</View>
}
/>
</View>
Imperative API
對於使用組件不理想的情況,還有一個必要的API作為組件上的靜態函數公開。但是,建議不要將靜態API和組件用於同一個prop,因為靜態API設置的任何值都將被下一個渲染中組件設置的值覆蓋。
Constants
currentHeight
(Android only) 狀態欄的高度。Props
animated
barStyle
hidden
backgroundColor
translucent
networkActivityIndicatorVisible
showHideTransition
Methods
Type Definitions
參考
Props
animated
如果狀態欄屬性更改之間的轉換應該是動畫。支持 backgroundColor,barStyle 和 hidden。
TYPE | REQUIRED |
---|---|
bool | No |
barStyle
設置狀態欄文本的顏色。
TYPE | REQUIRED |
---|---|
enum('default', 'light-content', 'dark-content') | No |
hidden
如果狀態欄被隱藏。
TYPE | REQUIRED |
---|---|
bool | No |
backgroundColor
狀態欄的背景顏色。
TYPE | REQUIRED | PLATFORM |
---|---|---|
color | No | Android |
translucent
如果狀態欄是半透明的。半透明設置為true時,應用程序將在狀態欄下繪製。這在使用半透明狀態欄顏色時很有用。
TYPE | REQUIRED | PLATFORM |
---|---|---|
bool | No | Android |
networkActivityIndicatorVisible
如果網絡活動指示器應該可見。
TYPE | REQUIRED | PLATFORM |
---|---|---|
bool | No | iOS |
showHideTransition
使用隱藏的道具顯示和隱藏狀態欄時的過渡效果。默認為“淡入淡出”。
TYPE | REQUIRED | PLATFORM |
---|---|---|
enum('fade', 'slide') | No | iOS |
Methods
setHidden()
static setHidden(hidden: boolean, [animation]: StatusBarAnimation)
顯示或隱藏狀態欄
參數:
NAME | TYPE | REQUIRED | DESCRIPTION |
---|---|---|---|
hidden | boolean | Yes | 隱藏狀態欄。 |
animation | StatusBarAnimation | No | 更改狀態欄隱藏屬性時的可選動畫。 |
setBarStyle()
static setBarStyle(style: StatusBarStyle, [animated]: boolean)
設置狀態欄樣式
參數:
NAME | TYPE | REQUIRED | DESCRIPTION |
---|---|---|---|
style | StatusBarStyle | Yes | 要設置的狀態欄樣式 |
animated | boolean | No | 為樣式更改設置動畫。 |
setNetworkActivityIndicatorVisible()
static setNetworkActivityIndicatorVisible(visible: boolean)
控製網絡活動指標的可見性
參數:
NAME | TYPE | REQUIRED | DESCRIPTION |
---|---|---|---|
visible | boolean | Yes | 顯示指示符。 |
setBackgroundColor()
static setBackgroundColor(color: string, [animated]: boolean)
設置狀態欄的背景顏色
參數:
NAME | TYPE | REQUIRED | DESCRIPTION |
---|---|---|---|
color | string | Yes | 背景顏色。 |
animated | boolean | No | 為樣式更改設置動畫。 |
setTranslucent()
static setTranslucent(translucent: boolean)
控制狀態欄的半透明度
參數:
NAME | TYPE | REQUIRED | DESCRIPTION |
---|---|---|---|
translucent | boolean | Yes | 設置為半透明。 |
Type Definitions
StatusBarStyle
狀態欄樣式
TYPE |
---|
$Enum |
常量:
VALUE | DESCRIPTION |
---|---|
default | 默認狀態欄樣式(iOS為暗,Android為淺) |
light-content | 深色背景,白色文本和圖標 |
dark-content | 淺色背景,深色文本和圖標(Android上需要API> = 23) |
StatusBarAnimation
狀態欄動畫
TYPE |
---|
$Enum |
Constants:
VALUE | DESCRIPTION |
---|---|
none | 沒有動畫 |
fade | 淡入淡出動畫 |
slide | 幻燈動畫 |
0 意見