我在React-native上面臨一個問題。我有TextInput
需要整個屏幕。我想在用戶向上或向下滑動時更改此文本輸入的內容。爲此,我正在使用PanResponder
。PanResponder在原生反應中的TextInput上
的問題是,PanResponder
搶斷從TextInput
焦點:當我點擊TextInput
,鍵盤沒有出現,我不能改變它的值。
有沒有辦法有兩個PanResponder
和Textinput
並存,使自來水將重點TextInput
和輕掃仍然會觸發PanResponder
回調?
我的代碼減少到重現該問題所需的最低限度:
export default class EditNoteScreen extends Component {
componentWillMount() {
this.panResponder = PanResponder.create({
onStartShouldSetPanResponder:() => true,
onStartShouldSetPanResponderCapture:() => true,
onMoveShouldSetResponderCapture:() => true,
onMoveShouldSetPanResponderCapture:() => true
});
}
render() {
return (
<View style={stylesNote.editScreen} {...this.panResponder.panHandlers}>
<View style={stylesNote.editScreenContent}>
<TextInput style={stylesNote.editScreenInput}>
Hello
</TextInput>
</View>
</View>
);
}
}
樣式:
editScreen: {
flex: 1
},
editScreenContent: {
flex: 5
},
editScreenInput: {
flex: 1,
borderColor: "transparent",
paddingLeft: 20,
paddingRight: 10
}
完美,謝謝! –