Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在标注中获取用户的输入,以便我可以对其执行操作。但是在 MapView.Callout 中使用 TextInput 是没有用的,因为整个 Callout 都被按下了。我该如何做到这一点?
以编程方式将焦点设置为TextInput调用回调的时间。给TextInput内部标注一个ref
TextInput
ref
像这样<TextInput ref={textInput => this.textInput = textInput} />。
<TextInput ref={textInput => this.textInput = textInput} />
现在,在标注的回调中简单地编写。 this.textInput.focus().
this.textInput.focus()
旁注:确保绑定到调用的回调this或在胖箭头函数中调用它,这样thisinthis.textInput.focus()就不会出现未定义。这是一个更简洁的解决方案,您不必纠结于绝对样式和组件重叠。
this