でonPress
囲まれたテキストがありますTouchableOpacity
。
<TouchableOpacity onPress={doNavigateToComment}>
<View>
<Text>
<Text onPress={doNavigateToUser}>
@{user.username}
</Text>{" "}
liked your comment.
</Text>
</View>
... more stuff ...
</TouchableOpacity>
そのテキストの任意の場所をタップすると、がトリガーされdoNavigateToComment
ます。ユーザーがユーザー名をタップすると、呼び出す必要doNavigateToUser
がありText
onPress
ます基本的な優先順位を与える方法はありますか?外側のタッチ可能なラッパーのみを認識しているようです。
コードを少し変更しましたが、意図したとおりの動作が得られています。
doNavigateToComment() {
console.log('doNavigateComment');
}
doNavigateToUser() {
console.log('doNavigateToUser');
}
<View style={styles.container}>
<TouchableOpacity
onPress={() => this.doNavigateToComment()}>
<View style={{ backgroundColor: 'red', height: 40, justifyContent: 'center', alignItems: 'center' }} >
<Text>
<Text
style={{ backgroundColor: 'blue' }}
onPress={() => this.doNavigateToUser()}>
Username
</Text>{' '}
liked your comment.
</Text>
</View>
</TouchableOpacity>
</View>
ユーザー名(青い領域)をdoNavigateToUser
押すと印刷され、赤い領域を押すと印刷されますdoNavigateComment
。あなたはおそらくあなたのスタイリングを適応させる必要があります。
スクリーンショット:
ワーキングエキスポ:
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加