准备工作
如果iOS16以及xcode14还没发布,请先装好环境再操作
1、安装iOS16系统
https://betahub.cn 用 Safari 浏览器打开,跟着操作步骤来。
2、安装Xcode14beta3【这里有可能要登录】
https://developer.apple.com/download/applications/
3、打开开发者模式
设置-隐私与安全性-开发者模式【滑到底部】
打开后会自动重启
开干了
1、粘贴板
原有的UIPasteboard还是可用的,在iOS16会有个提示框,用户同意即可执行后面的代码
新的UIPasteControl属性如下
UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
@interface UIPasteControl : UIControl
@property (nonatomic, readonly) UIPasteControlConfiguration *configuration;
@property (nonatomic, nullable, weak) id<UIPasteConfigurationSupporting> target;
- (instancetype)initWithConfiguration:(UIPasteControlConfiguration *)configuration NS_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
- (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIPasteControl.Configuration) NS_SWIFT_UI_ACTOR
@interface UIPasteControlConfiguration : NSObject <NSSecureCoding>
@property (nonatomic, assign) UIPasteControlDisplayMode displayMode;
@property (nonatomic, assign) UIButtonConfigurationCornerStyle cornerStyle NS_REFINED_FOR_SWIFT;
@property (nonatomic, assign) CGFloat cornerRadius;
@property (nonatomic, nullable, strong) UIColor *baseForegroundColor;
@property (nonatomic, nullable, strong) UIColor *baseBackgroundColor;
@end
UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
@protocol UIPasteConfigurationSupporting <NSObject>
@property (nonatomic, copy, nullable) UIPasteConfiguration *pasteConfiguration;
@optional
- (void)pasteItemProviders:(NSArray<NSItemProvider *> *)itemProviders;
- (BOOL)canPasteItemProviders:(NSArray<NSItemProvider *> *)itemProviders;
@end
2、新增 UICalendarView,可以显示日期并支持单选与多选日期。
3、新增一个交互 UIEditMenuInteraction,用于取代 UIMenuController 与 UIMenuItem。
4、新增一个交互 UIFindInteraction 用于文本内容查找与替换。
5、新增 LARightStore 用于存储与获取 keychain 中的数据。
6、UIImage 增加了新的构造函数用于支持 SF Symbols 最新版中增加的类别 Variable。
7、UIPageControl 支持垂直显示并可以设置指示器与当前页的图片。
8、UITableView 与 UICollectionView 在使用 Cell Content Configuration 时支持使用 UIHostingConfiguration 包装 SwiftUI 代码定义 Cell 的内容。
9、UITableView 与 UICollectionView 增加了新的selfSizingInvalidation参数,通过它 Cell 具备自动调整大小的能力。
10、UINavigationItem 增加了一个属性style用于描述 UINavigationItem 在 UINavigationBar 上的布局;增加了一个属性backAction用于实现当前 UIViewController 的返回按钮事件;增加了一个属性titleMenuProvider用于给当前导航栏的标题添加操作菜单。
11、UISheetPresentationController 支持自定义显示的 UIViewController 的大小。
12、UIMenu 支持设置尺寸,分别为small、medium与large。
UIMenu(title: "", preferredElementSize: .small, children: menuElements)
隐私权限增强,如通过 UIDevice 获取设备名称时,无法获取用户的信息,只能获取设备对应的名称。
13、UIDevice 不再支持通过setValue()方法设置设备的方向,替换为 UIWindowScene 的requestGeometryUpdate()方法。
为了支持 iOS 锁屏显示与 watchOS 表盘显示,WidgetFamily 增加了新的分类accessory。
14、UIScreen.main即将被废弃,建议使用(UIApplication.shared.connectedScenes.first as? UIWindowScene)?.screen。
报错:
error build: Signing for "gRPC-gRPCCertificates" requires a development team. Select a development team in the Signing & Capabilities editor.
解决