如何在普通的UITextView上绘制?

时间:2016-01-06 09:44:56

标签: ios objective-c core-graphics

如何在普通的UITextView上绘图?例如,我有一个自定义的UIView类,它将cornerRadius设置为5,背景颜色设置为[UIColor greenColor];

@implementation ChatBubbleTextView
-(id) initWithCoder:(NSCoder *)aDecoder {
    self = [super initWithCoder:aDecoder];
    if (self){
        self.layer.cornerRadius = 5;
        self.layer.backgroundColor = [UIColor greenColor].CGColor;
    }
    return self;
}

@end

但是一旦我添加了drawRect方法,它就会使我的UIView变成空白。有没有办法可以同时使用普通的drawRect和我自己的drawRect实现?

我也试过

-(void)drawRect:(CGRect)rect{
    [super drawRect:rect];
}

界面:

#import <UIKit/UIKit.h>

@interface ChatBubbleTextView : UITextView

@end

1 个答案:

答案 0 :(得分:0)

由于某些原因,如果没有drawRect,self.layer.backgroundColor = [UIColor greenColor].CGColor将起作用。但是,当有drawRect时,它将无法工作。您必须使用[self setBackgroundColor:[UIColor greenColor]