本文為 Eul 樣章,如果您喜歡,請移步 AppStore/Eul 查看更多內容,
Eul 是一款 SwiftUI & Combine 教程 App(iOS、macOS),以文章(文字、圖片、代碼)配合真機示例(Xcode 12+、iOS 14+,macOS 11+)的形式呈現給讀者,筆者意在盡可能使用簡潔明了的語言闡述 SwiftUI & Combine 相關的知識,使讀者能快速掌握并在 iOS 開發中實踐,
layoutPriority
layoutPriority 可以使我們手動控制視圖的布局優先級,我們看看如下代碼:
HStack {
Text("Hello")
Text("World")
Text("Stay Hungry, Stay Foolish")
// .layoutPriority(1)
}
.lineLimit(1)
.font(.title3)
在不打開注釋處的代碼時,最后的 Text 文字是會被壓縮顯示成省略號的,系統默認所有 View 的 layoutPriority 都是 0,如果我們將注釋打開,賦予最后的 Text 較高的優先級,那么最后的 Text 就可以完全展示出來,而前面的兩個 Text 可能會因為空間不足而被壓縮,
fixedSize
fixedSize 可以將試圖調整為理想的尺寸,比如我們有如下視圖:
Text("Stay Hungry, Stay Foolish")
//.fixedSize()
.font(.title)
.frame(width: 200, height: 50)
.border(Color.blue)
.centerHorizontal()
在沒有使用 fixedSize 的情況下,文本會被壓縮,因為 200 * 50 的空間不足以展示所有文字,如果我們將注釋處的代碼打開,文本就可以完全展示了,因為 SwiftUI 會為該視圖調整最理想的尺寸,
fixedSize 還能指定調整的方向:
func fixedSize(horizontal: Bool, vertical: Bool) -> some View
Bool 值為 true 時,表示要調整該方向上的尺寸,
本文為 Eul 樣章,如果您喜歡,請移步 AppStore/Eul 查看更多內容,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/288232.html
標籤:其他
