我在标签上设置文字有问题。标签在class1中声明,但我想使用它并在class2中设置它,我想在tableView中设置依赖于所选行的数据(在class2中实现)
我在第1课中的声明:
@property (weak, nonatomic) IBOutlet UILabel *trackNameDetailsLabel;
我在class2中的方法(我尝试这个但不起作用):
-(void)setLabels {
self.trackNameDetails = self.result.trackName;
}
result.trackName
会调用存储在url文件中的数据
提前致谢。
答案 0 :(得分:0)
您可以通过创建类似Class1 *referenceOf1 = self
的变量并将@class Class1;
添加到类2的顶部来为类2提供类1的引用。然后,在类2中,您可以创建一个实例第1类并调用该引用。
或者,您可以通过单例传递数据,在我看来这是更好的,并避免内存泄漏。这是一个了解更多单身人士的链接。
答案 1 :(得分:0)
看起来你有类2的trackNameDetails,但你想在class 1中将值设置为trackNameDetailsLabel 所以代码
-(void)setLabels {
self.trackNameDetails = self.result.trackName;
}
只会在类2中设置属性trackNameDetails。
你需要提供一个引用,它可以是类1到类2的实例,就像Cole所说的那样。 在第2课,
@property(strong, nonatomic) Class1 * class1;
-(void)setLabels {
class1.trackNameDetails = self.result.trackName;
}
在使用此方法之前,请记住将class1设置为Class1的实例