SDK 4.0 中的 UITableView.backgroundColor
我有一个具有 UITableView
自定义背景的应用程序。在 SDK 3.1.3 之前,这是通过将表格的 backgroundColor
属性设置为 [UIColor clearColor]
并将表格放置在另一个视图(UIImageView ' 例如)。 SDK 3.2添加了
backgroundView属性,将其设置为
nil也可以达到相同的效果。
SDK 4.0 删除了 SDK 3.1.x 库的所有痕迹,因此不可能编译出仍可在 3.1.x 设备上运行的 4.0 兼容版本。
如果我在 SDK 3.2 中创建一个临时版本并通过 iTunes 将其安装在 4.0 设备上,则一切都很好,应用程序按预期工作,世界也很高兴。如果我在 SDK 4.0 上编译它,则不会,即使我将目标设置为 3.0 并调用 setBackgroundColor:
(因此编译器不会抱怨符号不存在)。
那么,有什么办法解决这个问题吗?我基本上想要: - 使用 SDK 4.0 进行编译(这样我就可以使用 4.0 设备测试应用程序) - 使其在 3.x 设备上运行 - 使用 3.1.x 符号,在 4.0 上已弃用,因为安装基数仍然巨大
I have an app that has a custom background for a UITableView
. Up to the SDK 3.1.3 this was done by setting the table's backgroundColor
property to [UIColor clearColor]
and placing the table on top of another view (a UIImageView' for example). SDK 3.2 added the
backgroundViewproperty, and the same effect could be achieved by setting it to
nil`.
SDK 4.0 removed all traces of SDK 3.1.x libs, so it is impossible to compile a 4.0-compatible version that still works on 3.1.x devices.
If I create in SDK 3.2 an ad-hoc version and install it via iTunes on a 4.0 device, everything is fine, the app works as expected and the world is happy. If I compile it on the SDK 4.0 it does not, even if I set the target to 3.0 and call setBackgroundColor:
(so the compiler doesn't complain about a non-existant symbol).
So, is there any solution for this? I basically want to:
- compile with the SDK 4.0 (so I can test the app with a 4.0 device)
- make it work on 3.x devices
- use 3.1.x symbols, deprecated on 4.0, since the installed base is still huge
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的,我只是弱链接 UIKit.framework,如这个问题所述: 在 iPhone 应用程序中支持向后/向前兼容性的推荐方法? 并使用
UI_USER_INTERFACE_IDIOM()
有条件地调用适当的方法Ok, I just weak-link UIKit.framework as stated in this question: Recommended way to support backward/forward compatibility in iPhone app? and conditionally call the appropriate method with
UI_USER_INTERFACE_IDIOM()