2010-11-10 76 views
1

我在一个类中声明一个变量,并希望在同一个类中使用该变量,但是我想将数据放入不同类中的变量中。我怎样才能从另一个类中填充一个变量?访问另一个类中的变量的最简单方法

编辑:

我有这在一个类:

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]]; 
+0

这将有助于,如果你会清楚地陈述你的问题,也许给示例代码。你是否试图从一个不同的类访问一个变量(使用一个属性)或试图从另一个类获取一个值来放入一个局部变量(使用一个函数)? – RyanJM 2010-11-10 20:02:33

回答

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]]; 
} 
3

使属性/设置器方法来设置变量:

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

然后我在另一个类中有这样的:

在.h

@property(nonatomic, assign) int myInt; 

在.M

@synthesize myInt; 
1

关于房产的东西都是真的。缺失的部分是一个班级与另一个班级交谈的方式。我一直这样做,如下所示:

假设我有一个名为“First”的类和一个“Second”类。在我的“First”类中​​,我希望能够访问“Second”类中的“myInt”可扩展。

我将宣布“第二”这样:

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

@property (nonatomic,retain) FirstClass *first; 

现在,无论我(在这种情况下,它是的Firstclass说,但它并没有成为)创建二等,我ð像做”

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

然后里面的 “第二” 的代码,你可以这样做:

[first setMyInt:123]; 
相关问题