iOS 16 真機(jī)調(diào)試時(shí)需要在設(shè)備的設(shè)置 —> 隱私與安全 —> 開發(fā)者模式 中打開開發(fā)者模式。
新增 UICalendarView,可以顯示日期并支持單選與多選日期。
新增 UIPasteControl 用于讀取剪貼板中的內(nèi)容,否則跨 App 讀取時(shí)會彈出對話框讓用戶進(jìn)行選擇是否同意。
新增一個(gè)交互 UIEditMenuInteraction,用于取代 UIMenuController 與 UIMenuItem。
新增一個(gè)交互 UIFindInteraction 用于文本內(nèi)容查找與替換。
新增 LARightStore 用于存儲與獲取 keychain 中的數(shù)據(jù)。
UIImage 增加了新的構(gòu)造函數(shù)用于支持 SF Symbols 最新版中增加的類別 Variable。
UIPageControl 支持垂直顯示并可以設(shè)置指示器與當(dāng)前頁的圖片。
-
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) } } UITableView 與 UICollectionView 增加了新的
selfSizingInvalidation參數(shù),通過它 Cell 具備自動(dòng)調(diào)整大小的能力。UINavigationItem 增加了一個(gè)屬性
style用于描述 UINavigationItem 在 UINavigationBar 上的布局;增加了一個(gè)屬性backAction用于實(shí)現(xiàn)當(dāng)前 UIViewController 的返回按鈕事件;增加了一個(gè)屬性titleMenuProvider用于給當(dāng)前導(dǎo)航欄的標(biāo)題添加操作菜單。UISheetPresentationController 支持自定義顯示的 UIViewController 的大小。
-
UIMenu 支持設(shè)置尺寸,分別為
small、medium與large。let addNewMenu = UIMenu(title: "", preferredElementSize: .small, children: menuActions) 隱私權(quán)限增強(qiáng),如通過 UIDevice 獲取設(shè)備名稱時(shí),無法獲取用戶的信息,只能獲取設(shè)備對應(yīng)的名稱。
UIDevice 不再支持通過
setValue()方法設(shè)置設(shè)備的方向,替換為 UIWindowScene 的requestGeometryUpdate()方法。為了支持 iOS 鎖屏顯示與 watchOS 表盤顯示,WidgetFamily 增加了新的分類
accessory。UIScreen.main即將被廢棄,建議使用(UIApplication.shared.connectedScenes.first as? UIWindowScene)?.screen。支持 Live Activity,可以理解為一種特殊的鎖屏界面顯示的 Widget。
注:以上新特性均通過代碼測試,內(nèi)容會以專題文章的形式展示。