swift - SwiftUI:防止长词断字
问题描述
如何防止长词断字,例如调整字体大小以适应宽度?
要求:外层灰框必须具有相同的固定尺寸。应该是 2 行。
var body: some View {
VStack {
Spacer()
Image(systemName: "square")
.resizable()
.frame(width: 50, height: 50)
Spacer()
Text("Acknowledgement for the rest")
.allowsTightening(true)
.minimumScaleFactor(0.01)
.lineLimit(2)
.multilineTextAlignment(.center)
}
.padding()
.frame(width: 140, height: 150, alignment: .center)
.background(
ZStack {
RoundedRectangle(cornerRadius: 10)
.foregroundColor(Color(hex: "f9f9f9"))
}
)
}
解决方案
使用fixedSize 修饰符:
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Spacer()
Image(systemName: "square")
.resizable()
.frame(width: 50, height: 50)
Spacer()
Text("Acknowledgement for the rest")
.fixedSize() // <<: Here
.allowsTightening(true)
.minimumScaleFactor(0.01)
.lineLimit(nil)
.multilineTextAlignment(.center)
}
.padding()
.frame(height: 150)
.background(
ZStack {
RoundedRectangle(cornerRadius: 10)
.foregroundColor(Color.blue)
}
)
}
}
推荐阅读
- python-3.x - 每当我尝试安装 pygame lab 时,总会出现这个错误
- haskell - 如何将 Yesod 配置为仅在 localhost 上侦听?
- powershell - 更改多个 CheckBox 时,Powershell 保留 DataGridView 选择
- discord.py - 如何制作一个 webhook 以发送带有用户头像和昵称的消息执行命令 discord.py
- android - 如何在不更改 Android 动画中的 alpha 的情况下每秒闪烁图像
- angular - Angular - 响应不可分配给类型“请求?:HttpRequest
- netlogo - 将向量归因于链接
- azure-devops - 发布管道的代理作业缺少 UI 部分“工件下载”
- python - 在 Python 中将日期时间字符串列表转换为 Matplotlib 的日期时间对象
- jquery - jquery 中的确认对话框无法正常工作