繁体   English   中英

从UIView获取UILabel

[英]Get UILabel from UIView

我在给它们添加标签的视图中添加了许多标签。

从视图中检索标签的正确方法是什么。 我想重新定位标签。 这是我用来检索标签并重新定位的内容:

UILabel *theLabel = (UILabel *)[self.view viewWithTag:5];
[theLabel.layer setPosition:CGPointMake(100, 200)];

这是正确的做法吗?

尽管可以正常工作,但无需进入层级。

theLabel.center = CGPointMake(100,200);

我想这是在做同样的事情,而无需查看文档来验证图层的默认锚点是否是其中心。

您可以对for循环使用快速枚举:

for (UIView *view in [self.view subViews]) {
     if([view isKindOfClass:[UILabel class]]) {
          // do your stuff here
     }
}

试试这个,它肯定会工作。

检索标签,请使用IBOutlet如果已在Interface Builder中创建),或者使用raw属性或ivar(如果已在代码中创建)。 如果您有直接引用(出口,属性,ivar),则无需循环子视图或使用viewWithTag

移动标签,请直接设置其framecenter属性,而无需访问其图层。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM