StatusBar
アプリのステータスバーを制御するためのコンポーネントです。ステータスバーは通常、画面の上部にある領域で、現在の時刻、Wi-Fiや携帯電話ネットワークの情報、バッテリー残量、その他のステータスアイコンが表示されます。
ナビゲーターでの使用法
複数のStatusBar
コンポーネントを同時にマウントすることが可能です。propsは、StatusBar
コンポーネントがマウントされた順にマージされます。
- TypeScript
- JavaScript
命令的API
コンポーネントの使用が理想的でない場合のために、コンポーネントの静的関数として公開されている命令的APIもあります。ただし、静的APIとコンポーネントを同じpropに対して使用することは推奨されません。なぜなら、静的APIによって設定された値は、次のレンダリングでコンポーネントによって設定された値によって上書きされるためです。
リファレンス
定数
currentHeight
Android
ステータスバーの高さで、ノッチがある場合はその高さも含まれます。
Props
animated
ステータスバーのプロパティ変更時のトランジションをアニメーションさせるかどうか。backgroundColor
、barStyle
、hidden
プロパティでサポートされています。
型 | 必須 | デフォルト |
---|---|---|
boolean | いいえ | false |
backgroundColor
Android
ステータスバーの背景色です。
Android 15で導入されたedge-to-edgeの強制適用により、ステータスバーの背景色の設定はAPIレベル35で非推奨となり、設定しても効果がなくなります。私たちのedge-to-edgeに関する推奨事項はこちらで詳しく読むことができます。
型 | 必須 | デフォルト |
---|---|---|
color | いいえ | デフォルトのシステムStatusBar背景色、または未定義の場合は'black' |
barStyle
ステータスバーのテキストの色を設定します。
Androidでは、これはAPIバージョン23以上でのみ効果があります。
型 | 必須 | デフォルト |
---|---|---|
StatusBarStyle | いいえ | 'default' |
hidden
ステータスバーを非表示にするかどうか。
型 | 必須 | デフォルト |
---|---|---|
boolean | いいえ | false |
networkActivityIndicatorVisible
iOS
ネットワークアクティビティインジケータを表示するかどうか。
型 | デフォルト |
---|---|
boolean | false |
showHideTransition
iOS
hidden
プロパティを使用してステータスバーを表示・非表示にする際のトランジション効果です。
型 | デフォルト |
---|---|
StatusBarAnimation | 'fade' |
translucent
Android
ステータスバーを半透明にするかどうか。translucentをtrue
に設定すると、アプリはステータスバーの下に描画されます。これは半透明のステータスバーの色を使用する場合に便利です。
Android 15で導入されたedge-to-edgeの強制適用により、ステータスバーを半透明に設定することはAPIレベル35で非推奨となり、設定しても効果がなくなります。私たちのedge-to-edgeに関する推奨事項はこちらで詳しく読むことができます。
型 | デフォルト |
---|---|
boolean | false |
メソッド
popStackEntry()
static popStackEntry(entry: StatusBarProps);
スタックから最後のStatusBarエントリを取得して削除します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
entry 必須 | any | pushStackEntry から返されたエントリ。 |
pushStackEntry()
static pushStackEntry(props: StatusBarProps): StatusBarProps;
StatusBarエントリをスタックにプッシュします。返り値は、完了時にpopStackEntry
に渡す必要があります。
パラメータ
名前 | 型 | 説明 |
---|---|---|
props 必須 | any | スタックエントリで使用するStatusBarのpropsを含むオブジェクト。 |
replaceStackEntry()
static replaceStackEntry(
entry: StatusBarProps,
props: StatusBarProps
): StatusBarProps;
既存のStatusBarスタックエントリを新しいpropsで置き換えます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
entry 必須 | any | 置き換える対象のpushStackEntry から返されたエントリ。 |
props 必須 | any | 置き換え後のスタックエントリで使用するStatusBarのpropsを含むオブジェクト。 |
setBackgroundColor()
Android
static setBackgroundColor(color: ColorValue, animated?: boolean);
ステータスバーの背景色を設定します。
Android 15で導入されたedge-to-edgeの強制適用により、ステータスバーの背景色の設定はAPIレベル35で非推奨となり、設定しても効果がなくなります。私たちのedge-to-edgeに関する推奨事項はこちらで詳しく読むことができます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
color 必須 | string | 背景色。 |
animated | boolean | スタイルの変更をアニメーションさせます。 |
setBarStyle()
static setBarStyle(style: StatusBarStyle, animated?: boolean);
ステータスバーのスタイルを設定します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
style 必須 | StatusBarStyle | 設定するステータスバーのスタイル。 |
animated | boolean | スタイルの変更をアニメーションさせます。 |
setHidden()
static setHidden(hidden: boolean, animation?: StatusBarAnimation);
ステータスバーを表示または非表示にします。
パラメータ
名前 | 型 | 説明 |
---|---|---|
hidden 必須 | boolean | ステータスバーを非表示にします。 |
animation iOS | StatusBarAnimation | ステータスバーのhiddenプロパティを変更する際のアニメーション。 |
setNetworkActivityIndicatorVisible()
iOS
static setNetworkActivityIndicatorVisible(visible: boolean);
ネットワークアクティビティインジケータの表示・非表示を制御します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
visible 必須 | boolean | インジケータを表示します。 |
setTranslucent()
Android
static setTranslucent(translucent: boolean);
ステータスバーの半透明度を制御します。
Android 15で導入されたedge-to-edgeの強制適用により、ステータスバーを半透明に設定することはAPIレベル35で非推奨となり、設定しても効果がなくなります。私たちのedge-to-edgeに関する推奨事項はこちらで詳しく読むことができます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
translucent 必須 | boolean | 半透明に設定します。 |
型定義
StatusBarAnimation
iOSでのトランジション用のステータスバーアニメーションタイプです。
型 |
---|
enum |
定数
値 | 型 | 説明 |
---|---|---|
'fade' | string | フェードアニメーション |
'slide' | string | スライドアニメーション |
'none' | string | アニメーションなし |
StatusBarStyle
ステータスバーのスタイルタイプです。
型 |
---|
enum |
定数
値 | 型 | 説明 |
---|---|---|
'default' | string | デフォルトのステータスバースタイル(iOSではダーク、Androidではライト) |
'light-content' | string | 白いテキストとアイコン |
'dark-content' | string | 黒いテキストとアイコン(AndroidではAPI>=23が必要) |