首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问本地定义的标签

访问本地定义的标签
EN

Stack Overflow用户
提问于 2012-08-16 04:46:09
回答 2查看 36关注 0票数 0

我的应用程序有一个创建标签的方法

代码语言:javascript
复制
     -(void)addLabel:(float)x:(float)y:(float)w:(float)h:(NSString *)text {
        CGRect label1Frame = CGRectMake( x, y, w, h );
        UILabel *label1 = [[UILabel alloc] initWithFrame: label1Frame];
        label1.text = text;
        [self.view addSubview:label1];}

然后,我从其他方法调用此方法。

我如何访问这些标签中的一个以将其从superview中删除,因为我没有它的var名称。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-16 04:51:54

代码语言:javascript
复制
-(void)addLabel:(float)x :(float)y :(float)w :(float)h :(NSString *)text tag:(NSInteger)tag {
    CGRect label1Frame = CGRectMake( x, y, w, h );
    UILabel *label1 = [[UILabel alloc] initWithFrame: label1Frame];
    label1.tag = tag;
    label1.text = text;
    [self.view addSubview:label1];
}

然后传入一个适当的tag值(整数),该值是唯一的。然后使用:

代码语言:javascript
复制
UILabel *label = (UILabel *)[self.view viewWithTag:someIntID];

才能访问它。

票数 1
EN

Stack Overflow用户

发布于 2012-08-16 04:49:44

您需要为它创建一个ivar/属性。如果您不希望在接口上使用此标签,请在实现文件中声明一个类扩展并声明您的标签

代码语言:javascript
复制
@interface yourclass()
@property (nonatomic, weak)UILabel *yourLabel;
@end

记住将@synthesize添加到您的实现文件中。将标签作为子视图添加后,将该值分配给属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11977001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档