如果我使用自定义类别来扩展 UIKit 界面元素(比如 UIButton)的功能,我的应用被 Apple 拒绝的可能性会更大吗?
澄清:我正在考虑实现一个切换 UIButton,它将在每次点击时在按下/释放状态之间交替。
如果我使用自定义类别来扩展 UIKit 界面元素(比如 UIButton)的功能,我的应用被 Apple 拒绝的可能性会更大吗?
澄清:我正在考虑实现一个切换 UIButton,它将在每次点击时在按下/释放状态之间交替。
当然,您可以通过类别或子类来扩展 UIButton 的功能。
HIG 违规是应用程序被拒绝的最常见原因,这也是我所关心的。但这是你的判断。可能发生的最糟糕的情况是他们要求您修复它。
这听起来像是类别的用途......您正在扩展 UIButton,这是一种标准的 OO 技术。只要您的类别本身不违反任何规则(即访问未记录的内部代码),我认为您会没事的,但要遵守关于没有人知道为什么苹果有时会做这些事情的标准免责声明......
您可以使用自定义类别来做任何您想做的事情。如果您包含私有 API,您可能不会被拒绝,但如果他们更改 API,您可能会发现自己陷入困境。将任何使用私有 API 的方法包装在 @try 块中是一种很好的做法,并包含一个解决方法,以防最坏的情况发生