使用Interface Builder标记

问题描述:

我正在使用接口构建器的标记功能来访问一些UILabels我在xib文件中实例化。由于这是一个UITextViewCell,我想避免多余的方法调用,但我也想做到这一点。因此,当我做的:使用Interface Builder标记

UILabel *label = (UILabel *)[cell viewWithTag:1]; 

我想知道如果我应该把它包起来,像这样:

if([[cell viewWithTag:1] isKindOfClass [UITableViewCell class]]) { 
    UILabel *label = (UILabel *)[cell viewWithTag:1]; 
} 

的任何讨论,这将不胜感激。

感谢

除非你有很多都有子视图标记不同类别的不同对象的“1”,那么这是没有必要的。

如果你有一堆不同的对象(细胞,说的)有不同的类,但都以1个标签的子视图,我会重新考虑你的标记方案。也许是101,201,301 &等

像八月,我建议让您的标签号码您的视图层次的分支中是唯一的。

我还建议您设置一个enum来枚举您的可能标记值,以便您的viewWithTag:方法变得更具可读性。

是我找到的枚举方法效果很好,或者只是做的#define FOO 1,#定义栏2等

您在属性编辑器中使用命令1设置在界面生成器标签,寻找'标签“下方的背景设置。