我可以解釋我正在嘗試做什麼,但this ReactJS example是我想要的一個演練。問題是我無法弄清楚equivelant會是什麼原因。如何在提交後獲得React Native TextInput以保持焦點?
基本上,當我按下TextInput中的return時,我希望清除文本並保持焦點。
有什麼想法?
我可以解釋我正在嘗試做什麼,但this ReactJS example是我想要的一個演練。問題是我無法弄清楚equivelant會是什麼原因。如何在提交後獲得React Native TextInput以保持焦點?
基本上,當我按下TextInput中的return時,我希望清除文本並保持焦點。
有什麼想法?
我已經提交了一個PR blurOnSubmit
屬性。
將它設置爲false
和TextInput
從不模糊,但onSubmitEditing
仍然引發。
希望它合併。 :)
我想出了以下(工作)解決方案:
var NameInput = React.createClass({
getInitialState() {
return {
textValue: ''
}
},
clearAndRetainFocus: function(evt, elem) {
this.setState({textValue: elem.text});
setTimeout(function() {
this.setState({textValue: this.getInitialState().textValue});
this.refs.Name.focus();
}.bind(this), 0);
},
render() {
return(
<TextInput
ref='Name'
value={this.state.textValue}
onEndEditing={this.clearAndRetainFocus} />
)
}
});
所以,基本上,當我們最終的編輯,我們將textValue
狀態設置爲以後的TextInput
和右邊的值(setTimeout
)我們將它切換回默認值(空)並保留元素的焦點。
耶!它合併了! – 2015-11-05 20:50:42