【发布时间】:2011-10-17 18:46:37
【问题描述】:
我想让 UIImageView 显示为圆角,并在 Stack Overflow 上找到了以下代码:
loginImage = [[UIImageView alloc] initWithImage: [UIImage imageNamed:@"BlueSky.jpg"]];
CALayer *l = [loginImage layer];
[l setMasksToBounds:YES];
[l setCornerRadius:5.0];
[loginImage release];
我将此代码添加到我的 viewDidLoad 方法中,但不幸的是 UIImageView 没有给我我期望的圆角。我在 Interface Builder 中正确链接了 imageview “loginImage”。
任何想法我在这里做错了什么? 谢谢!
【问题讨论】:
-
很奇怪,但试试 [l setCornerRadius:5.0f];您的项目是否包含重要的框架,例如
或 -
谢谢,我试过了,但不幸的是它没有用......当视图加载时我也没有收到任何错误消息......是的,它包含所需的框架......
-
好吧,如果这里的代码是满的,程序怎么知道这是子视图呢?你应该添加类似这样的 loginImage.layer = l;甚至避免制作额外的物品; [loginImage.layer setMasksToBounds:YES]; [loginImage.layer setCornerRadius:5.0f];
-
根据您的建议,我替换了:CALayer *l = [loginImage layer] by CALayer *l = loginImage.layer;但没有积极的结果(尽管仍然没有错误)...我将 .h 文件中的 loginImage 声明为 IBOutlet UIImageView 并将其链接到 Interface Builder 中的 Files Owner...
-
no no no, not l = [loginImage Layer];但是 loginImage.layer = l;这是两条不同的线路。
标签: xcode uiimageview