【发布时间】:2014-07-26 15:47:56
【问题描述】:
我有这个 ObjC 代码:
[self.myButton setBackgroundImage:[UIImage imageNamed:[NSString stringWithFormat:@"%@-button", self.myObject.name]]
forState:UIControlStateNormal];
这很适合这些组合:
- XCode 5,iOS 7.1
- XCode 6,iOS 7.1
- XCode 6,iOS 8
但是,当我将项目的一个类移植到 Swift(与此代码中发生的任何事情无关的类)时,图像不会显示在 iOS 7.1 的 XCode 6 中。它适用于 XCode 6 和 iOS 8。
我完成了整个项目到 Swift 的移植,所以现在代码如下:
self.myButton.setBackgroundImage(
UIImage(named:self.myObject.name + "-button"),
forState: UIControlState.Normal
)
在 iOS 7.1 上它仍然不满意。仍然没有图像。 (虽然自定义图标有效。)是的,我知道这只是测试版软件,它可能只是一个错误......?但我只是想知道是否有人有解决方案或见解。
我大约一周前才开始使用 XCode 和 ObjC(惊喜!ObjC 现在已被弃用!),所以可能是我遗漏了一些东西,但由于它在 ObjC 和 Swift+iOS8 中工作,看起来像这可能是一个错误。
【问题讨论】:
-
尝试在图片名称末尾添加扩展名。我已经看到解决了 Swift 代码的一些问题...
-
谁说 Objective-C 被弃用了?
-
Objective-C 没有被弃用,你现在只有两个不同的选项来编写你的 iOS/OSX 应用程序。
-
Objective-C 说 “谢谢你,我还很好,我一点也不反对!”.
-
Pascal 在 Mac OS 上也从未真正被弃用,是吗?我不是字面上的意思。但写在墙上。这需要几年时间,但在某个时候,没有人会在 ObjC 中进行新的开发。