1

我想在标注中获取用户的输入,以便我可以对其执行操作。但是在 MapView.Callout 中使用 TextInput 是没有用的,因为整个 Callout 都被按下了。我该如何做到这一点?

4

1 回答 1

0

以编程方式将焦点设置为TextInput调用回调的时间。给TextInput内部标注一个ref

像这样<TextInput ref={textInput => this.textInput = textInput} />

现在,在标注的回调中简单地编写。 this.textInput.focus().

旁注:确保绑定到调用的回调this或在胖箭头函数中调用它,这样thisinthis.textInput.focus()就不会出现未定义。这是一个更简洁的解决方案,您不必纠结于绝对样式和组件重叠。

于 2017-09-24T19:25:32.773 回答