我在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
}
完美,谢谢! –