React Native实现Text组件文本行均匀间距(类电子书排版)
React Native Text组件实现文本两端对齐(电子书式均匀分布)
要实现Text组件内每行文本像电子书那样均匀分布(两端对齐),不需要用ScrollView的justifyContent(它是用来控制容器内子组件的布局,而非文本内部排版),直接给Text组件设置textAlign: 'justify'样式即可,这是React Native专门用于文本两端对齐的属性。
修改你的样式代码,在text_style中添加该属性:
const styles = StyleSheet.create({ container: { flex: 1, borderColor: "red", borderWidth: 1, justifyContent: "center", alignItems: "center", backgroundColor: "grey", width: "80%", }, scrollview: { flex: 1, // 此处的justifyContent对文本内部排版无作用,可移除 }, text_style: { fontSize: 20, color: "black", textAlign: 'justify', // 关键:实现文本两端对齐 }, });
补充说明
textAlign: 'justify'会让每行文本(最后一行除外)自动调整字符间距,实现左右两端对齐的效果,和电子书排版逻辑一致。- 如果需要强制最后一行也对齐,可额外添加
textAlignLast: 'justify'(该属性在Android、Web平台支持较好,iOS目前暂不支持),但电子书通常会保留最后一行左对齐的排版习惯。
内容的提问来源于stack exchange,提问作者ProgrammerDin
相关产品推荐
相关产品推荐

