如何访问在另一个类中创建的 IBOutlets
?例如,如果我在 Class A
中有一个 IBOutlet
,我如何在 Class B
中访问?如果我无法从其他类访问 IBOutlets
,有什么解决方法?
最佳答案
您需要将您的 IBOutlet
设为 @property
并通过 @synthesize
为该属性定义一个 getter,或者您可以定义您的自己的 setter/getter ,这是前者的一个例子:
@interface ClassA : NSObject {
UIView *someView;
}
@property (nonatomic, retain) IBOutlet UIView *someView;
@end
@implementation ClassA
@synthesize someView;
...
@end
然后,在 ClassB
中,您可以这样做:
@implementation ClassB
- (void) doSomethingWithSomeView {
ClassA *a = [ClassA new];
UIView *someView = [a someView];
//do something with someView...
}
...
@end
关于objective-c - 如何从 Objective-C 中的其他类访问 IBOutlets?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053988/