更改动态创建的UIView的颜色

时间:2014-04-07 06:49:39

标签: ios objective-c uiview tags

我正在动态创建UIView及其子视图(例如UITextfield,UIButton等)(通过阅读JSON)

我正在为所有UIView提供标记,并尝试按标记调用。

例如,我正在尝试更改另一个视图中视图的背景颜色。

父视图的标签是1,子视图是11。

我的示例代码如下;

UIView *temp = [self.view viewWithTag:1];

if([[temp viewWithTag:11] isKindOfClass:[UIView class]])
{
    [((UIView*)[temp viewWithTag:11]) setBackgroundColor:[UIColor blackColor]];
}

但没有变化,没有效果。

请你帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

#define PARENT_VIEW_TAG 1
#define CHILD_VIEW_TAG 11

    UIView *parentView = [self.view viewWithTag:PARENT_VIEW_TAG];

    for (UIView *vw in [parentView subviews]) {

        if(vw.tag == CHILD_VIEW_TAG)
        {
            [vw setBackgroundColor:[UIColor blackColor]];
        }
    }