0
我试图将子类UIView允许我在单个视图控制器上为我的应用程序绘制六个小框 - 想法是我将在这些顶部显示使用标签的文本6框。子类UIView在当前视图控制器上显示框
我创建了一个新的Objective-C类的子类UIView
,输入的代码来设置框&的大小/颜色/位置终于被替换UIVie
瓦特应用了自定义类在我的故事板“视图”我的班级在身份检查员的部分中的名称(这是一个单视图应用btw),但是当我运行应用时,什么都没有出现(除了故事板中已经存在的内容) - 如果我完全使用相同的代码空白应用程序出现6个盒子!所以,我想我失去了一些东西......这里是箱子我的代码部分:
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
// Drawing code
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 0.611, 0.505, 0.321, 0.8);
CGContextFillRect(context, CGRectMake(53, 271, 37, 52));
CGContextFillRect(context, CGRectMake(141, 271, 37, 52));
CGContextFillRect(context, CGRectMake(229, 271, 37, 52));
CGContextFillRect(context, CGRectMake(52, 399, 37, 52));
CGContextFillRect(context, CGRectMake(140, 399, 37, 52));
CGContextFillRect(context, CGRectMake(229, 399, 37, 52));
}
根据apple文档“如果直接继承UIView,则此方法的实现不需要调用super。但是,如果您继承了不同的视图类,则应在实现中的某个位置调用super。”所以不需要[超级drawRect] – santhu
我甚至从来没有想过使用标签的背景来设置颜色...不知道为什么...显然在思考的东西:(即完美的作品,尽管如此谢谢:) – user2820855