ios ui对象检查文本属性

时间:2013-01-15 14:54:41

标签: ios

我需要检查某个对象是否有文本属性。例如,它可以是UIButtonUILabel。但是,显示UIButtonUILabel的文字的属性之间存在问题。

这就是区别:

对于UIButton我们使用setTitle:方法设置文字,但对于UILabel我们使用另一个名为setText:

的文字

我需要做些什么:

我需要获取所有子视图,如果这些子视图具有text属性,我需要使用一些文本更改此属性值。

当然,我可以检查对象的类和设置所需的属性,但也许我们有另一种方法可以在不检查对象类的情况下完成它。

1 个答案:

答案 0 :(得分:1)

for (id item in [self.view subviews])
{
    if ([item respondsToSelector:@selector(text)])
        [item setText:@"text"]; // change text for UILabel
    else if ( [item respondsToSelector:@selector(setTitle:forState:)])
        [item setTitle:@"text" forState:UIControlStateNormal]; // change text for UIButton
}