Dou*_*ith 7 xcode uiview ios ios8 ibdesignable
在layoutSubviews我调用setImage()并传递它UIImage但它从未出现在Interface Builder中,但它总是出现在我运行程序时.
Les*_*ary 14
可能你用这种方法加载你的UIImage:
UIImage *image = [UIImage imageNamed:@"image"];
Run Code Online (Sandbox Code Playgroud)
这在界面构建器中不起作用,因为imageNamed:方法使用主捆绑但IB以不同方式加载资源.尝试这样的事情:
- (void)prepareForInterfaceBuilder
{
UIImage *image = [UIImage imageNamed:@"image" inBundle:[NSBundle bundleForClass:[self class]] compatibleWithTraitCollection:nil];
[self setImage:image forState:UIControlStateNormal];
}
Run Code Online (Sandbox Code Playgroud)
小智 5
像我一样,为遇到此问题的任何人提供迅速的答案。
问题在于,Interface Builder中的图像路径与应用程序中的图像路径不同。
let bundle = Bundle(for: self.classForCoder)
image = UIImage(named: "your_image.png", in: bundle, compatibleWith: self.traitCollection)!
self.setImage(image, for: .normal)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1953 次 |
| 最近记录: |