ios - 在 Objective-C 中向 IBOutlet 添加 iOS 可用性检查
问题描述
我正在将 Sign in with Apple 添加到我的应用程序中,并且我知道它仅在 iOS 13 及更高版本中受支持,而我仍然支持回 iOS 11。
我想通过 Storyboards 添加按钮,因为这就是我正在使用的。当我添加按钮时:
@property (weak, nonatomic) IBOutlet ASAuthorizationAppleIDButton *signInWithAppleButton;
我收到以下警告:
如您所料。
修复它API_AVAILABLE
在我的接口声明上方添加了一个宏,所以它现在看起来像这样:
API_AVAILABLE(ios(13.0))
@interface SignUpViewController ()
// .. bunch of IBOutlets
@property (weak, nonatomic) IBOutlet ASAuthorizationAppleIDButton *signInWithAppleButton;
@end
我的问题是:这是正确的吗?该应用程序在 iOS 12 上仍然运行得非常好,如果它运行的版本低于 iOS 13,我可以隐藏该按钮,但我只是觉得奇怪的是,它的修复程序应用于整个界面,而不仅仅是IBOutlet
某种方式。
任何信息表示赞赏。
解决方案
推荐阅读
- php - 为单个邮件添加密件抄送邮件 ID 的限制是什么
- mongodb - 将 SQL 查询转换为 mongodb
- asp.net - 在 ASP.NET Web 表单中使用 JWT 令牌
- java - 查找给定范围之间的史密斯数
- python - 如何提取视频中每一帧的 Unix 时间戳并保存到 Python 中的 csv 文件?
- laravel - Socialite google 仅在本地主机上工作,而不是生产
- javascript - Javascript 随机未在 Ruby on Rails 5.2.3 生产模式上加载
- flutter - 按下按钮更新相机initialCameraPosition
- python - 我正在尝试将表格的某些列转换为行。我正在使用 pyspark.sql
- sql - SQL 从函数更新表