1.不升級電腦系統(tǒng)與 Xcode牍鞠,調(diào)試iOS 16
1暮蹂、下載iOS16 Support文件
2碍讨、放置到Xcode DeviceSupport目錄重啟Xcode即可/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
2.iOS16手機(jī)開啟開發(fā)者模式
iOS16手機(jī)未打開開發(fā)者模式時(shí):
1捉超、Xcode 無法選中 iOS16的設(shè)備泳梆,報(bào)錯(cuò):developer mode disable
解決辦法:打開調(diào)試手機(jī)-設(shè)置-隱私與安全-開發(fā)者模式-開啟開發(fā)者模式(需要重啟手機(jī))
3.Pod工程中的Bundle target簽名報(bào)錯(cuò)
方法一:手動選擇Pod工程中的Bundle target 簽名中的Team勿侯,與主工程一致
方法二:在Podfile腳本中設(shè)置你的開發(fā)者的Team ID
post_install do |installer|
installer.generated_projects.each do |project|
project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings["DEVELOPMENT_TEAM"] = "Your Team ID"
end
end
end
end
方法三:在Podfile腳本中設(shè)置CODE_SIGN_IDENTITY為空來避免報(bào)錯(cuò)
post_install do |installer|
installer.generated_projects.each do |project|
project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['CODE_SIGN_IDENTITY'] = ''
end
end
end
end
4. UICalendarView
新增 UICalendarView,可以顯示日期并支持單選與多選日期
5. UIPasteControl
新增 UIPasteControl 用于讀取剪貼板中的內(nèi)容官份,否則跨 App 讀取時(shí)會彈出對話框讓用戶進(jìn)行選擇是否同意
6. UIEditMenuInteraction
新增一個(gè)交互 UIEditMenuInteraction只厘,用于取代 UIMenuController 與 UIMenuItem。
7.UIFindInteraction
新增一個(gè)交互 UIFindInteraction 用于文本內(nèi)容查找與替換舅巷。
8. LARightStore
LARightStore 用于存儲與獲取 keychain 中的數(shù)據(jù)羔味。
9.UIImage
UIImage 增加了新的構(gòu)造函數(shù)用于支持 SF Symbols 最新版中增加的類別 Variable。
10.UIPageControl
UIPageControl 支持垂直顯示并可以設(shè)置指示器與當(dāng)前頁的圖片
11.UITableView , UICollectionView
1.UITableView 與 UICollectionView 在使用 Cell Content Configuration 時(shí)支持使用 UIHostingConfiguration 包裝 SwiftUI 代碼定義 Cell 的內(nèi)容钠右。
cell.contentConfiguration = UIHostingConfiguration {
HStack {
Image(systemName: images[indexPath.row])
.foregroundStyle(.teal)
Text(devices[indexPath.row])
.font(.caption)
.foregroundStyle(.secondary)
}
}
2.UITableView 與 UICollectionView 增加了新的selfSizingInvalidation參數(shù)赋元,通過它 Cell 具備自動調(diào)整大小的能力。
12.UINavigationItem
UINavigationItem 增加了一個(gè)屬性style用于描述 UINavigationItem 在 UINavigationBar 上的布局;增加了一個(gè)屬性backAction用于實(shí)現(xiàn)當(dāng)前 UIViewController 的返回按鈕事件搁凸;增加了一個(gè)屬性titleMenuProvider用于給當(dāng)前導(dǎo)航欄的標(biāo)題添加操作菜單媚值。
13.UISheetPresentationController
UISheetPresentationController 支持自定義顯示的 UIViewController 的大小
14.UIMenu 支持設(shè)置尺寸,分別為small护糖、medium與large杂腰。
let addNewMenu = UIMenu(title: "", preferredElementSize: .small, children: menuActions)
15.隱私權(quán)限增強(qiáng)
隱私權(quán)限增強(qiáng),如通過 UIDevice 獲取設(shè)備名稱時(shí)椅文,無法獲取用戶的信息,只能獲取設(shè)備對應(yīng)的名稱惜颇。
16.UIDevice
UIDevice 不再支持通過setValue()方法設(shè)置設(shè)備的方向皆刺,替換為 UIWindowScene 的requestGeometryUpdate()方法。
17. Live Activity
支持 Live Activity凌摄,可以理解為一種特殊的鎖屏界面顯示的 Widget羡蛾。
18.UIFont
增加了 3 種新的寬度樣式:compressed、condensed與expanded锨亏,加上默認(rèn)的standard痴怨,目前 UIFont 共有 4 種字體寬度。寬度大小關(guān)系為:expanded>standard>condensed>compressed
// Created by YungFanimportUIKitclassViewController:UIViewController{// 定義4種寬度不同的字體let expanded =UIFont.systemFont(ofSize:27, weight:.bold, width:.expanded)let standard =UIFont.systemFont(ofSize:27, weight:.bold, width:.standard)let condensed =UIFont.systemFont(ofSize:27, weight:.bold, width:.condensed)let compressed =UIFont.systemFont(ofSize:27, weight:.bold, width:.compressed)lazyvar expandedLabel:UILabel={let label =UILabel(frame:CGRect(x:10, y:100, width:360, height:40))
label.text ="Xcode14 and iOS16"
label.font = expanded
return label
}()lazyvar standardLabel:UILabel={let label =UILabel(frame:CGRect(x:10, y:150, width:360, height:40))
label.text ="Xcode14 and iOS16"
label.font = standard
return label
}()lazyvar condensedLabel:UILabel={let label =UILabel(frame:CGRect(x:10, y:200, width:360, height:40))
label.text ="Xcode14 and iOS16"
label.font = condensed
return label
}()lazyvar compressedLabel:UILabel={let label =UILabel(frame:CGRect(x:10, y:250, width:360, height:40))
label.text ="Xcode14 and iOS16"
label.font = compressed
return label
}()overridefuncviewDidLoad(){super.viewDidLoad()
view.addSubview(expandedLabel)
view.addSubview(standardLabel)
view.addSubview(condensedLabel)
view.addSubview(compressedLabel)}}
每個(gè)更新點(diǎn)的具體變化案例可參考http://www.reibang.com/nb/49167696