objective-c - 如何在不使用属性或 ivar 的情况下引用对象

标签 objective-c ios object

如果我使用以下内容在 subviews 集合中添加 UIView 子类:

-(void)loadOutlet
{
    myOutlet *out = [[myOutlet alloc] init];
    [self addSubview:out];
    [out release];
}

-(void)unloadOutlet
{
    myOutlet *out = <<HOW CAN I REFERENCE IT FROM subviews array?>>
    [out removeFromSuperView];
}

这样做的最佳做法是什么?

从现在开始,我使用 isKindOfClass 为每个 subview 查找使用循环,但是没有更好的方法吗?

谢谢。

最佳答案

您可以为 subview 分配一个标签,然后使用相同的标签检索它。

-(void)loadOutlet
{
    myOutlet *out = [[myOutlet alloc] init];
    out.tag = 1; // Or some other value
    [self addSubview:out];
    [out release];
}

-(void)unloadOutlet
{
    myOutlet *out = [self viewWithTag:1];
    [out removeFromSuperView];
}

关于objective-c - 如何在不使用属性或 ivar 的情况下引用对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9930092/

相关文章:

ios - 我们可以在 Facebook SDK 3.1 中使用 DeprecatedHeaders 多长时间?

ios - 如何在 iPhone 应用程序中切换扬声器和耳机

iphone - Objective c 中带有端口的 url 的正则表达式

ios - iOS 是否存储用户的性别?

ios - UIWebView 右移 Xcode 4.6.3

java - 对象数组NullPointerException,处理3.3.6

c++ - 公开定义对象,但在构造函数中创建它

objective-c - 创建时删除 NSArrayControllers selectedObjects

ios - 如何隐藏UICollectionView的滚动条

php - 直接调用分配给对象属性的闭包