ios 怎么根据tag值取出相应的控件

2025-05-08 23:55:38
推荐回答(3个)
回答1:

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 40, 20)];
label.tag=123;
label.backgroundColor = [UIColor blackColor];
[self.view addSubview:label]

1.在开发中,我们很多时候需要动态创建控件.在创建控件的时候给控件设置一个tag值,利用这个tag值来操作控件.

2.创建控件一般要设置控件的大小和位置,这两个属性是最重要的.最后利用addSubview:方法将控件添加到指定的容器即可.

3.通过tag获取控件然后操作控件的属性等,我们可以遍历父控件,通过tag找到指定的控件.

4.给按钮添加单击事件要利用addTarget:(id) action:(sel) forControlEvents:UIControlEvents)方法,这个方法有3个参数,第一个是参数是id,即要调用方法的那个控件;第二个参数是sel,即要执行的方法,因为是SEL类型,所以要利用@selector(方法名);第三个参数是给该控件添加的事件,如UIControlEventTouchUpInside单击事件.

回答2:

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 40, 20)];
label.tag=123;
label.backgroundColor = [UIColor blackColor];
[self.view addSubview:label];

//根据tag查找
UILabel *find_label = (UILabel *)[self.view viewWithTag:123]; find_label.backgroundColor = [UIColor redColor];
我觉得在循环 遍历用tag标记,查找比较常见
//另一种根据tag查找

for (UIView *find_label in self.view.subviews) {

if (find_label.tag == 123)

{

find_label.backgroundColor = [UIColor redColor];

}

}

回答3:

[self.view viewWithTag:(NSInteger)];