2015-01-26 24 views

回答

0

1)对类进行子类化并添加UIAppearance圆角半径属性。这将为您提供可重用的类,您可以在具有不同角半径值的不同视图控制器中使用这些类。您必须创建3个新课程,并记住在添加新项目时将其全部设置为Interface Builder

2)假设一切都包含在同一视图中,您可以遍历所有子视图并检查该类。如果最终使用嵌套视图,则还需要检查这些子视图。不是最干净的,但如果它是一个简单的视图,这是一个不错的选择。

for (UIView *view in self.view.subviews) 
{ 
    if ([view isKindOfClass:[UILabel class]] || [view isKindOfClass:[UIButton class]] || [view isKindOfClass:[UITextField class]]) 
    { 
     view.layer.cornerRadius = 10.f; 
    } 
} 

3)您可以在无需检查类创建以同样的方式通过它的IBOutletCollection和循环。随着您添加/删除项目,这会变得很烦人。

+0

完美!感谢这个优秀的代码...我只添加了layer.masksToBounds = YES;而已 – Daniela 2015-01-26 21:09:55

0

您可以将它们全部放入IBOutletCollection,这是通过Interface Builder生成的数组。与您创建插座的方式类似,请在出现的弹出窗口中选择Outlet Collection。然后拖动您想要在其中迭代的所有其他UI项目。但请注意,集合中的所有项目必须是相同的类型。所以如果你有标签和按钮,你需要为每个收藏品分别收藏。

或者,您可以创建每个类型的单独子类,并设置其角半径(因为您显然常常使用该类型的控件)并在Interface Builder中使用这些类。

+0

感谢您的提示与iboutletcollection ... – Daniela 2015-01-26 21:26:13

相关问题