TextInput的 onContentSizeChange 中的contentSize属性一直是固定值 HarmonyOS 鸿蒙Next
TextInput的 onContentSizeChange 中的contentSize属性一直是固定值 HarmonyOS 鸿蒙Next
DevEco Studio版本:(如:DevEco Studio 5.0.3.600) SDK:HarmonyOS NEXT Developer Beta3 SDK, based on OpenHarmony SDK Ohos_sdk_public 5.0.0.36 (API Version 12 Beta3) 三方库版本:react-native": "0.72.5
操作步骤:
<TextInput
style={styles.input}
underlineColorAndroid={‘transparent’}
placeholder={placeholder}
textAlignVertical=“top”
multiline={true}
onContentSizeChange={this.onContentSizeChange}
value={this.filterText(text)}
ref={(ref) => {
this.textInputRef = ref
}}
onChangeText={this.onChangeText}
onEndEditing={this.onChangeTextEnd}
/>
onContentSizeChange = (event) => { const { height } = event.nativeEvent?.contentSize || {} //打印出来一直是固定值
}
更多关于TextInput的 onContentSizeChange 中的contentSize属性一直是固定值 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
import { TextInput,StyleSheet, } from 'react-native';
const ExampleComponent = () => {
const [text, onChangeText] = React.useState('');
const onContentSizeChange = (event) => {
const {height} = event.nativeEvent?.contentSize || {}
//打印出来一直是固定值
console.log(height);
}
return (
<TextInput
style={styles.input}
underlineColorAndroid={'transparent'}
placeholder={'placeholder'}
textAlignVertical="top"
multiline={true}
onContentSizeChange={onContentSizeChange}
// value={this.filterText(text)}
// ref={(ref) => {
// this.textInputRef = ref
// }}
// onChangeText={onChangeText1}
// onEndEditing={this.onChangeTextEnd}
/>
);
};
const styles = StyleSheet.create({
input: {
height: 100,
margin: 40,
borderWidth: 1,
padding: 10,
},
});
export default ExampleComponent;
更多关于TextInput的 onContentSizeChange 中的contentSize属性一直是固定值 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,TextInput
组件的onContentSizeChange
回调中的contentSize
属性通常用于获取文本内容的大小变化。如果你发现contentSize
属性一直是固定值,这可能是由于以下几种原因:
-
文本内容未变化:如果输入的文本内容没有变化,
contentSize
可能不会更新。确保在输入过程中有实际的内容变更。 -
布局约束:
TextInput
的父布局可能对其大小进行了限制,导致contentSize
无法正确反映内容大小。检查父布局的约束条件,确保没有固定大小或比例限制。 -
样式和字体影响:字体大小、行高等样式属性会影响文本内容的大小计算。确认这些样式属性在回调触发前后没有变化。
-
组件版本或系统问题:确保你使用的HarmonyOS SDK版本支持动态更新
contentSize
。某些早期版本可能存在BUG或不支持该功能。 -
回调实现问题:检查
onContentSizeChange
回调的实现,确保逻辑正确且没有被其他代码覆盖或修改。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。