我想在我的项目中为所有的UIImageViews添加一些圆角.我已经让代码正常工作了,但是必须将它应用到每个图像;我应该子类UIImageView来添加它吗?如果是这样的话,有没有人能给我一些指点,告诉我怎么做呢?

这是代码

- (void)viewDidLoad {
    [super viewDidLoad];
    NSString *mainpath = [[NSBundle mainBundle] bundlePath];
    welcomeImageView.image = [UIImage imageWithContentsOfFile:[mainpath stringByAppendingString:@"/test.png"]];
    welcomeImageView.layer.cornerRadius = 9.0;
    welcomeImageView.layer.masksToBounds = YES;
    welcomeImageView.layer.borderColor = [UIColor blackColor].CGColor;
    welcomeImageView.layer.borderWidth = 3.0;
    CGRect frame = welcomeImageView.frame;
    frame.size.width = 100;
    frame.size.height = 100;
    welcomeImageView.frame = frame;
}

推荐答案

您可以对UIImage使用类别,这是对类进行子类化的另一种方式,有时只需做一些小的更改就更容易了.

例如,添加一个返回设置了圆角属性的UIImage的方法.

+(UIImage *)imageWithContentsOfFile:(NSString *)file cornerRadius:(NSInteger)... 

有关Objective-c类别的更多信息,请参见http://macdevelopertips.com/objective-c/objective-c-categories.html

Ios相关问答推荐

SwiftUI中的视频时间轴

如何使用Xcode15.1在iMessage扩展模块中显示贴纸

如何创建具有SPM依赖项的二进制XCFramework?

当文本为空时,具有垂直轴的SwiftUI文本字段不会与FirstTextBaseline对齐

使用标头UICollectionViewFlowLayout时的简单SwiftUI视图错误

如何在@AppStorage中存储字体?

尽管存在浮点错误,如何显示正确的计算结果.计算器应用程序

react 本机 |错误:无法解析 node_modules/react-native/index.js 中的模块

Apollo iOS 客户端代码生成:错误:无法查询字段

SwiftUI 解除 .alert 弹出 NavigationView

在视图控制器中实例化视图控制器是否可能/智能?

如何包含 Xcode 子项目标头?

从父母到子元素的 Swift Pass 事件

搜索在 ios xamarin.forms 中不起作用

在 Swift 中为 UITextField/UIView 摇动动画

如何在 SwiftUI 中检测 TextField 的实时变化?

在 iPhone 中将 UIViewController 显示为弹出窗口

从 WKWebView 获取所有 cookie

有什么方法可以加粗 NSString 的一部分?

UIGestureRecognizer 阻止子视图处理touch 事件