概要: このチュートリアルでは、React Native Pressableコンポーネントを使用して、プレス、ホバー、フォーカスなどのさまざまなタッチ操作を検出する方法を学びます。
React Native Pressableコンポーネントの概要
Buttonコンポーネントは、外観と操作感の点でかなり制限されています。ボタンがアプリのデザインに合わない場合は、Pressable
コンポーネントを使用してボタンを作成できます。
Pressable
コンポーネントを使用する手順は次のとおりです。
まず、react-native
ライブラリからPressable
コンポーネントをインポートします。
import { Pressable } from 'react-native';
Code language: JavaScript (javascript)
次に、アプリでPressable
コンポーネントを使用します。
<Pressable onPress={handlePress}>
<Text>Button</Text>
</Pressable>
Code language: JavaScript (javascript)
Pressable
には次のイベントがあります。
onPressIn
は、プレスジェスチャーを開始したときにトリガーされます。
onPressIn
イベントの後
- 指を離すと、
Pressable
コンポーネントはonPressOut
に続いてonPress
イベントをトリガーします。 - 指を離す前に500ミリ秒以上長く押し続けると、
Pressable
はonLongPress
イベントをトリガーし、その後にonPressOut
イベントが続きます。
次の図
次の例は、Pressable
コンポーネントを使用してカスタムボタンを作成する方法を示しています。
import { StyleSheet, Text, View, Pressable, Alert } from 'react-native';
const App = () => {
const handlePress = () => {
Alert.alert('Pressed!');
}
return (
<View style={styles.container}>
<Pressable style={styles.button} onPress={handlePress}>
<Text style={styles.buttonText}>Button</Text>
</Pressable>
</View>
)
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
button: {
paddingVertical: 8,
paddingHorizontal: 16,
borderRadius: 332,
minWidth: 100,
alignItems: 'center',
backgroundColor: '#111',
},
buttonText: {
color: '#fff',
fontSize: 16
},
});
export default App;
Code language: JavaScript (javascript)
仕組み。
まず、react-native
ライブラリからPressableコンポーネントと他のコンポーネントをインポートします。
import { StyleSheet, Text, View, Pressable, Alert } from 'react-native';
Code language: JavaScript (javascript)
次に、PressableコンポーネントとTextコンポーネントを使用してカスタムボタンを作成します。
<View style={styles.container}>
<Pressable style={styles.button} onPress={handlePress}>
<Text style={styles.buttonText}>Button</Text>
</Pressable>
</View>
Code language: JavaScript (javascript)
Pressable
コンポーネントで、handlePress
関数をonPressイベントに割り当てて、プレスイベントを処理します。
3番目に、handlePress
イベントを定義してアラートを表示します。
const handlePress = () => {
Alert.alert('Pressed!');
}
Code language: JavaScript (javascript)
ボタンを押すと、Pressed!
というテキストのアラートが表示されます。
出力
概要
Pressable
コンポーネントを使用してカスタムボタンを作成します。
このチュートリアルは役に立ちましたか?