访问另一个类中的变量的最简单方法

时间:2010-11-10 19:58:09

标签: iphone objective-c class variables

我在一个类中声明一个变量,并希望在同一个类中使用该变量,但我想将数据放入另一个类中的变量中。如何从另一个类填充变量?

编辑:

我在一堂课中有这个:

NSManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
NSString *aString = [[managedObject valueForKey:@"data"] description];

然后我在另一堂课中有这个:

    NSString *stalklabel = aString;

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://news.search.yahoo.com/rss?ei=UTF-8&p=%@&fr=news-us-ss", stalklabel, nil]];

3 个答案:

答案 0 :(得分:3)

创建一个property / setter方法来设置变量:

在.h

@property(nonatomic, assign) int myInt;

在.m

@synthesize myInt;

答案 1 :(得分:1)

在第一个类中创建一个返回该字符串的方法。

+ (NSString*)dataName {
    NSManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
    NSString *aString = [[managedObject valueForKey:@"data"] description];
}

在第二节课中,调用该方法。

- (void)whatEverClass {
    NSString *stalklabel = [FirstClass dataName];

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://news.search.yahoo.com/rss?ei=UTF-8&p=%@&fr=news-us-ss", stalklabel, nil]];
}

答案 2 :(得分:1)

关于属性的东西都是真的。缺少的部分是一个班级与另一个班级交谈的方式。我这样做的时间如下:

假设我有一个名为“First”的类和一个“Second”类。在我的“第一”课程中,我希望能够访问“第二”课程中的“myInt”varable。

我会宣布“第二”:

@class FirstClass; // Forward Declaration
@interface SecondClass: NSObject {
  FirstClass*first;
}

@property (nonatomic,retain) FirstClass *first;

现在,无论我创建了secondClass(在这种情况下,它是 firstClass中,但它不一定是),我会做类似“

SecondClass *second = [[SecondClass alloc] init];
[second setFirst: self];

然后在“第二”代码中,你可以这样做:

[first setMyInt:123];