1.6 文本与符号修饰符
4 分钟阅读
原文链接: https://developer.apple.com/documentation/swiftui/view-text-and-symbols
1.6 文本与符号修饰符
管理视图中文本的渲染、选取和输入。
概述
SwiftUI 提供向用户显示文本的内置视图(例如 Text 和 Label),也提供从用户那里收集文本的内置视图(例如 TextField 和 TextEditor)。用文本与符号修饰符控制 SwiftUI 如何显示和管理这些文本。例如,你可以设置字体、指定文本布局参数,并说明预期接收哪种输入。
要了解更多关于用来显示文本的视图种类、以及配置这些视图的方式,参见文本输入与输出。
字体
- font(_:) —— 设置该视图中文本的默认字体。
动态字体
- dynamicTypeSize(_:) —— 把视图内的动态字体尺寸设置为给定值。
文本样式
- bold(_:) —— 对该视图中的文本应用粗体字重。
- fontDesign(_:) —— 设置该视图中文本的字体设计。
- fontWeight(_:) —— 设置该视图中文本的字重。
- fontWidth(_:) —— 设置该视图中文本的字体宽度。
- italic(_:) —— 对该视图中的文本应用斜体。
- monospaced(_:) —— 尽可能把所有子视图的字体改为当前字体的等宽变体。
- monospacedDigit() —— 尽可能把所有子视图的字体改为等宽数字,同时让其他字符保持比例间距。
- strikethrough(_:pattern:color:) —— 对该视图中的文本应用删除线。
- textCase(_:) —— 设置该视图中包含文本在显示时的大小写变换。
- textScale(_:isEnabled:) —— 对视图中的文本应用文本缩放。
- textRenderer(_:) —— 返回一个新视图,其中所有文本视图都会使用
renderer来绘制自身。 - underline(_:pattern:color:) —— 对该视图中的文本应用下划线。
- attributedTextFormattingDefinition(_:) —— 对嵌套视图应用文本格式化定义。
标签配置
- labelIconToTitleSpacing(_:) —— 设置标签中图标与标题之间的间距。
- labelReservedIconWidth(_:) —— 设置标签中为图标预留的宽度。
文本布局
- allowsTightening(_:) —— 设置该视图中的文本在有必要让一行文字放得下时,能否压缩字符之间的间距。
- baselineOffset(_:) —— 设置该视图中文本相对于其基线的垂直偏移。
- flipsForRightToLeftLayoutDirection(_:) —— 设置当布局方向为从右到左时,该视图是否水平镜像其内容。
- kerning(_:) —— 设置该视图中文本字符之间的间距(字距)。
- lineHeight(_:) —— 用于视图层级中默认行高的修饰符。
- minimumScaleFactor(_:) —— 设置该视图中文本为适应可用空间而允许缩小到的最小比例。
- tracking(_:) —— 设置该视图中文本的字间距。
- truncationMode(_:) —— 为过长而放不下的文本行设置截断模式。
- typesettingLanguage(_:isEnabled:) —— 指定排版语言。
- writingDirection(strategy:) —— 用于视图层级中默认文本书写方向策略的修饰符。
多行文本
- lineLimit(_:) —— 把该视图中文本最多可占的行数设为一个闭区间。
- lineLimit(_:reservesSpace:) —— 设置该视图中文本可占行数的上限。
- lineSpacing(_:) —— 设置该视图中文本各行之间的间距。
- multilineTextAlignment(_:) —— 设置包含多行文本的文本视图的对齐方式。
- multilineTextAlignment(strategy:) —— 用于视图层级中默认文本对齐策略的修饰符。
文本选取
- textSelection(_:) —— 控制人们能否在该视图中选取文本。
- textSelectionAffinity(_:) —— 设置选区或光标相对于文本字符的方向。
数据检测
- dataDetection(_:options:) —— 异步检测视图内容中的数据,并为它们设置样式以表明可以点击。
文本输入
- autocorrectionDisabled(_:) —— 设置是否对该视图禁用自动更正。
- keyboardType(_:) —— 设置该视图的键盘类型。
- scrollDismissesKeyboard(_:) —— 配置可滚动内容与软件键盘交互的行为。
- textInputAutocapitalization(_:) —— 设置键盘上 Shift 键自动启用的频率。
- textInputBorderShape(_:) —— 为视图层级中的文本输入控件设置边框形状。
- textInputCompletion(_:) —— 当该视图用作文本输入建议时,把一个完整构成的字符串与它的值关联起来
- textInputSuggestions(_:) —— 配置该视图的文本输入建议。
- textInputSuggestions(_:content:) —— 配置该视图的文本输入建议。
- textInputSuggestions(_:id:content:) —— 配置该视图的文本输入建议。
- textContentType(_:) —— 设置该视图的文本内容类型,系统在用户于 macOS 上输入文本时会用它来提供建议。
- textContentType(_:) —— 设置该视图的文本内容类型,系统在用户于 watchOS 设备上输入文本时会用它来提供建议。
- textContentType(_:) —— 设置该视图的文本内容类型,系统在用户于 macOS 上输入文本时会用它来提供建议。
- textContentType(_:) —— 设置该视图的文本内容类型,系统在用户于 iOS 或 tvOS 设备上输入文本时会用它来提供建议。
- textInputFormattingControlVisibility(_:for:) —— 指定人们可以使用哪些系统文本格式化控件来格式化文本。
查找与替换
- findNavigator(isPresented:) —— 为文本编辑器视图以编程方式呈现查找与替换界面。
- findDisabled(_:) —— 阻止在文本编辑器中进行查找与替换操作。
- replaceDisabled(_:) —— 阻止在文本编辑器中进行替换操作。
符号外观
- symbolRenderingMode(_:) —— 设置该视图中符号图像的渲染模式。
- symbolColorRenderingMode(_:) —— 设置符号图像的颜色渲染模式。
- symbolVariableValueMode(_:) —— 设置该视图中符号图像的变量值模式。
- symbolVariant(_:) —— 让视图中的符号显示某个特定变体。
写作工具
- writingToolsAffordanceVisibility(_:) —— 指定系统是否应为受该环境影响的文本输入视图显示写作工具的提示入口。
- writingToolsBehavior(_:) —— 指定该环境中文本与文本输入的写作工具行为。
- WritingToolsBehavior —— 文本与文本输入的写作工具编辑体验。