ios - 什么更有效,覆盖 drawRect 或使用 viewWillAppear

标签 ios objective-c cocoa-touch uitextview

我有几个UITextView s 在几个 ViewController秒。过去,当我有几个需要为 TextView 自定义绘图的实例时或 Label , 等 我会调整 viewWillAppear 中的绘图在拥有 UI 对象的 VC 中。这一次,我将需要几个实例进行定制。

只创建一个子类 UITextView 是否更合适?并将绘图代码包含在 drawRect 中与将相同的绘图代码分散在多个 VC 中相比。我主要担心性能。不过,代码可维护性是次要问题。

需要说明的是,这就是我在 drawRect 中使用的内容:

- (void)drawRect:(CGRect)rect {
    self.layer.cornerRadius = 10;
    self.clipsToBounds = YES;
}

所以经过进一步测试,initWithFrame没有被调用,但是 initWithCoder做。我还发现 initWithCoder被调用一次,drawRect 也是如此.在我的用例中(单元格中的 StaticCellTableViewUITextView 有什么区别?

最佳答案

您可以将这两行包含在子类 UITextView 的 init 或 initWithCoder(如果它是 xib 或 Storyboard)方法中。 基本上,这只是对象的属性 - 不需要在每次 UIView 需要刷新自身时运行。

关于ios - 什么更有效,覆盖 drawRect 或使用 viewWillAppear,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16170458/

相关文章:

ios - WebSQL - 容量

ios - 如何删除 managedObject - 而不是 tableView

objective-c - 使用他们的 iOS Hook 将照片发布到 Instagram

ios - UICollectionView 刷新问题

Info.plist 中缺少 iOS 9 “fbauth2”

objective-c - 如何防止 UISwitch 改变状态?

Iphone 应用程序升级检查

cocoa - 将 NSNumberFormatter 的负数格式从 (xxx.xx) 更改为 -xxx.xx

iphone - 模拟器构建路径

ios - 登录Twitter后如何获取oauth token ?