下面的代码在iOS(iPhone 6(中无法正常工作。当我按下"推我"时,单词没有完全显示,光标也没有显示。在进一步调查中,我发现onChangeText和onContentSize更改没有被触发。按下"Push Me"按钮后按键盘上的任意键会显示完整的单词。我希望在单击按钮时显示完整的单词。如果我使用值属性来更新文本输入,它可以工作。但是我需要显示格式化文本,如此链接中的"标记化文本示例":https://facebook.github.io/react-native/docs/textinput.html
import React, { Component } from 'react';
import {
AppRegistry,
TouchableOpacity,
TextInput,
Text,
View
} from 'react-native';
export default class keypost extends Component {
constructor(props) {
super(props);
this.state = {
part: '',
update: true
};
}
myfunc() {
this.setState({ part: <Text><Text style={{ color: 'blue' }}>"thivishnu_ks_is_good_boyo lllllll COurs uad is sfd_sdf llllsdf sfsddfadfadsfadsff dsafdfas"</Text> <Text>"fasdfa sjsjsjs jsjsjsj sjsjshshshsshshss"</Text></Text> })
}
render() {
var parts = this.state.part
return (
<View style={{ paddingTop: 50 }}>
<TextInput
multiline={true}
style={{ height: 300 }}
>
<Text>{parts}</Text>
</TextInput>
<TouchableOpacity style={{ height: 100, width: 100 }} onPress={this.myfunc.bind(this)} >
<Text style={{}}>
Push Me
</Text>
</TouchableOpacity>
</View>
);
}
}
删除赋予TextInput
的固定高度将解决最初的隐藏问题。
<TextInput
multiline={true}
>
<Text>{parts}</Text>
</TextInput>