ステータスバーはモバイル アプリケーションに不可欠な部分であり、多くの場合、ネットワーク インジケーター、時間、バッテリー情報が表示されます。ただし、全画面エクスペリエンス、ゲーム、没入型メディア アプリケーションなど、ステータス バーを非表示にする必要があるシナリオもあります。
この記事では、React Native でステータスバーを非表示にする方法を取り上げ、さまざまなエッジケースを検討し、アプリのデザインと機能に基づいたさまざまな要件について説明します。
React Native は、アプリ全体での表示を制御するために使用できる StatusBar コンポーネントを提供します。完全に非表示にするには、StatusBar コンポーネントの hidden prop を使用できます。
import React from 'react'; import { View, StatusBar } from 'react-native'; const App = () => { return ( <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}> <StatusBar hidden={true} /> {/* Your content goes here */} </View> ); }; export default App;
この基本的な例では、ステータスバーが画面全体で非表示になります。ただし、特定の特殊なケースや要件では、より複雑な構成が必要になる場合があります。これについては次に説明します。
ゲーム、メディア プレーヤー、没入型エクスペリエンスなど、全画面表示するように設計されたアプリの場合は、特定の画面だけでなく、アプリケーションのすべての画面でステータス バーを非表示にする必要がある場合があります。
ステータスバーがアプリ全体で非表示になるようにするには:
import React from 'react'; import { View, StatusBar } from 'react-native'; const App = () => { return ( <View style={{ flex: 1 }}> <StatusBar hidden={true} /> {/* Rest of your app goes here */} </View> ); }; export default App;
ノッチのあるデバイス (ノッチのある iPhone やディスプレイ カットアウトのある Android デバイスなど) をターゲットとするアプリの場合、通常、アプリの UI がこれらの領域と重ならないようにする必要があります。通常、SafeAreaView はこれを管理します。
ステータス バーを完全に非表示にしている場合、ステータス バーは表示されなくなるため、ステータス バーに関連する安全領域を管理するための SafeAreaView は必要ありません。ただし、アプリがデバイス ノッチやホーム インジケーターなどの他のシステム UI 要素を考慮する必要がある場合でも、SafeAreaView はそれらの領域の管理に役立つ可能性があります。
import React from 'react'; import { View, StatusBar, SafeAreaView } from 'react-native'; const App = () => { return ( <SafeAreaView style={{ flex: 1 }}> <StatusBar hidden={true} /> <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}> {/* Content will not overlap with notches or home indicators */} </View> </SafeAreaView> ); }; export default App;
アプリが複数の向き (縦向きと横向き) をサポートしている場合、ステータスバーの動作はデバイスの設定と向きに基づいて変化する可能性があります。場合によっては、特に Android では、方向を切り替えるとステータスバーが再表示されることがあります。
ステータスバーがすべての方向で非表示になるようにするには:
以上がReact Native でステータスバーを完全に非表示にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。