您如何获取本机InputAccessoryView的nativeID

时间:2018-07-15 17:24:14

标签: react-native

我在这里关注InputAccessoryView上的文档:https://facebook.github.io/react-native/blog/2018/03/22/building-input-accessory-view-for-react-native.html

包含代码:

export default class Debug extends Component {
  constructor(props) {
    super(props);
    this.state = {text: 'Hello world from debug'};
  }

  render() {

    const inputAccessoryViewID = "uniqueID";

    const accesory = (
        <InputAccessoryView nativeID={inputAccessoryViewID}>
          <Button
            onPress={() => this.setState({text: 'You didnt enter the magic word'})}
            title="Reset Text"
          />
        </InputAccessoryView>
    )

    return (
        <View>
            <ScrollView keyboardDismissMode="interactive">
              <TextInput
                style={{
                  padding: 10,
                  paddingTop: 50,
                }}
                inputAccessoryViewID={inputAccessoryViewID}
                onChangeText={text => this.setState({text})}
                value={this.state.text}
              />
            </ScrollView>

            {accesory}

        </View>
    );
  }
}

但是文档未解释我在哪里可以获取此ID uniqueID。我可以在xcode中找到它吗?

1 个答案:

答案 0 :(得分:1)

InputAccessoryView期望nativeID属性的唯一ID与具有TextInput属性设置的唯一ID的inputAccessoryViewID匹配。这样,它便知道在该输入上激活。这样,您可以为不同的InputAccessoryView使用不同的TextInput

  

本机ID

     

用于将此InputAccessoryView与指定的ID相关联的ID   TextInput

因此uniqueID是一个唯一的字符串,您可以自己设置为与TextInput匹配的任何内容。