先來(lái)看看下面的代碼
1、正常的代碼,可以運(yùn)行
struct ContentView: View {
var body: some View {
Group {
Text("1")
Text("2 ")
Text("3 ")
Text("4 ")
Text("5 ")
Text("6 ")
Text("7 ")
Text("8 ")
Text("9 ")
Text("10 ")
//Text("11 ")
}
}
}
2、會(huì)提示編譯錯(cuò)誤的代碼
struct ContentView: View {
var body: some View {
Group {
Text("1")
Text("2 ")
Text("3 ")
Text("4 ")
Text("5 ")
Text("6 ")
Text("7 ")
Text("8 ")
Text("9 ")
Text("10 ")
Text("11 ")
}
}
}
build時(shí)會(huì)出現(xiàn)下面的錯(cuò)誤
Argument passed to call that takes no arguments
真正的原因
xcode的提示實(shí)在是太莫名其妙了,我通過(guò)查看文檔才發(fā)現(xiàn)。SwiftUI 的container是有數(shù)量限制,具體限制多少呢。文檔里面沒(méi)有寫(xiě)明(也可能是我們沒(méi)有找到),但是文檔下面的buildblock沒(méi)有超過(guò)10的

有圖有真相
后來(lái)我又google一下,果然有這個(gè)限制。
受影響的其他容器
下面的容器都是有10個(gè)對(duì)象的限制
- VStack
- HStack
- ZStack
- Group
- List
- 未來(lái)的容器
為什么有這個(gè)限制
我認(rèn)為應(yīng)該是apple不希望我們創(chuàng)建過(guò)于復(fù)雜的單頁(yè)視圖,希望我們盡快進(jìn)行模塊劃分。
參考資料
推薦
基礎(chǔ)文章推薦
經(jīng)典教程推薦
- onevcat 大神的《SwiftUI 與 Combine 編程》
- 更新近百篇SwiftUI教程《SwiftUI2020教程》
- 幫您突破數(shù)據(jù)存儲(chǔ)難關(guān)《SwiftUI vs CoreData數(shù)據(jù)存儲(chǔ)解決方案》
技術(shù)源碼推薦
推薦文章
CoreData篇
- SwiftUI數(shù)據(jù)存儲(chǔ)之做個(gè)筆記App 新增與查詢(CoreData)
- SwiftUI進(jìn)階之存儲(chǔ)用戶狀態(tài)實(shí)現(xiàn)登錄與登出
- SwiftUI 數(shù)據(jù)之List顯示Sqlite數(shù)據(jù)庫(kù)內(nèi)容(2020年教程)
Combine篇
TextField篇
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源碼)》
- 《SwiftUI實(shí)戰(zhàn)之TextField風(fēng)格自定義與formatters》
- 《SwiftUI實(shí)戰(zhàn)之TextField如何給鍵盤(pán)增加個(gè)返回按鈕(隱藏鍵盤(pán))》
- 《SwiftUI 當(dāng)鍵盤(pán)出現(xiàn)時(shí)避免TextField被遮擋自動(dòng)向上移動(dòng)》
- 《SwiftUI實(shí)戰(zhàn)之TextField如何給鍵盤(pán)增加個(gè)返回按鈕(隱藏鍵盤(pán))》
JSON文件篇
一篇文章系列
- SwiftUI一篇文章全面掌握List(教程和源碼)
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源碼)》
- SwiftUI一篇文章全面掌握Picker,解決數(shù)據(jù)選擇(教程和源碼)
- SwiftUI一篇文章全面掌握Form(教程和源碼)
- SwiftUI Color 顏色一篇文章全解決
技術(shù)交流
QQ:3365059189
SwiftUI技術(shù)交流QQ群:518696470
- 請(qǐng)關(guān)注我的專欄icloudend, SwiftUI教程與源碼
http://www.itdecent.cn/c/7b3e3b671970