0

我已经看到了许多巧妙的想法来按摩视图和控件,使其完全符合我们想要的方式,其中一些在 SO 上列出:

  1. 透明UISearchBariPad/iPhone uiSearchbar 透明背景
  2. 不同颜色UISegmentedControlUISegmentedControl 选择的段颜色

我想知道,这合法吗?每当有人对类似的东西进行硬编码时,似乎都会涉及一些黑客元素[[view subviews] objectAtIndex:0],但它似乎无处不在......有人可以对此发表评论并可能给出一些观点吗?按照规则书可以吗?有没有人发布过这样的生产代码并且被苹果接受了?

4

3 回答 3

1

它作为 API 的一部分公开,因此是合法的。我已经在 App Store 中的应用程序上完成了它,我知道其他人也这样做了。

于 2011-05-18T20:08:19.880 回答
0

几乎每一个好看的应用程序都做到了这一点,并获得了很好的批准。当您决定这样做时,只需为可能会破坏您正在做的事情的新版本 iOS 做好准备,并准备好立即发布更新

于 2011-05-18T20:08:27.713 回答
0

仅仅因为你能够做某事,并不意味着它在所有地方都适用。在某些情况下,访问视图的子视图的能力是必要的,但是我会担心依赖特定的 UIView 在层次结构中的特定位置来获取您不维护的组件。无法保证特定子视图将始终是 sdk 未来版本中的第零个子视图。

如果这是唯一的方法,那么您可能别无选择,但请记住,它是您的应用程序的一个脆弱部分,应该针对所有平台上的每个 sdk 版本进行充分测试。

于 2011-05-18T21:59:31.287 回答