我正在构建一个移动聊天应用程序,我遇到了这个问题,我将消息显示为视图内的文本,但显然我无法使消息显示在适合视图内的特定高度。要么是消息太长,所以无法完全显示(视图中没有足够的空间),要么是消息出现,但文本后面有很多空格。
请查看准确描述问题的图片:
这是我的代码:
1- 观看次数:
if (chat.from !== CurrentUser) {
temp_chat.push(
<View key={i} style={styles.messageContainer1}>
<View style={styles.thisUserText}>
<Text style={styles.message}>{chat.msg}</Text>
</View>
<View style={styles.empty}></View>
</View>
);
} else {
temp_chat.push(
<View key={i} style={styles.messageContainer2}>
<View style={styles.empty}></View>
<View style={styles.otherUserText}>
<Text style={styles.message}>{chat.msg}</Text>
</View>
</View>
);
}
2- 风格:
messageContainer1: {
flexDirection: "row",
marginBottom: 10,
flex: 1,
},
messageContainer2: {
flexDirection: "row",
justifyContent: "flex-end",
marginBottom: 10,
flex: 1,
},
message: {
fontSize: 16,
color:"#fff",
padding:10
},
empty: {
flex: 1,
},
thisUserText: {
backgroundColor: "#bf0010", // red
flex: 1,
height: 100,
borderRadius: 5,
color:"#fff",
},
otherUserText: {
backgroundColor: "#13283E", // dark blue
flex: 2,
height: 100,
borderRadius: 5,
},
我需要的是红色和深蓝色视图的动态高度,以使内部文本完美契合,无论是长文本还是短文本。我怎样才能实现这个目标?
提前谢谢🙏