2

我在class1中有一个实例变量,它保存整数值(tableview中的单元格数),我想在另一个类(例如class2)中使用这个变量,但我不知道使用哪种语法???

4

4 回答 4

0

« 如果可能,使用成员变量。

@interface MyClass : NSObject  
{
    int score;
}
@property (nonatomic, assign) int score;
@end

@implementation MyClass
@synthesize score;
@end

//access
MyClass *object = [MyClass alloc] init];
object.score = 99;

« 你也可以使用 NSUserDefault

// Snippet used to save your highscore in the prefs.
int highScore  = yourGameScore;
[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:highScore] forKey:@"HighScore"];
[[NSUserDefaults standardUserDefaults] synchronize];


// Snippet used to get your highscore from the prefs.
highScore = [[[NSUserDefaults standardUserDefaults] objectForKey:@"HighScore"] intValue ];
于 2013-04-03T07:27:08.187 回答
0

你可以这样做:

例如:您想从 to 传递一个Class1字符串Class2

首先在 Class2 中创建 String 并将其定义为属性,如下所示Class2.h

NSString *classTwoString;
@property (nonatomic, retain) NSString *classTwoString;

Class2.m

@synthesize classTwoString;

然后,例如,您想在Class1触摸按钮时传递字符串。在其操作(创建IBAction,将其与按钮链接touchesUpInside)中,您可以将其设置为获取第二类的实例,例如:

Class2 *class2 = [[Class2 alloc] init];    
class2.classTwoString= classOneString;

我建议上面的方法。

NSUserDefaults如果应用程序崩溃,使用- 可能会丢失存储的值。

于 2013-04-03T07:40:31.997 回答
-1

您可能想要使用属性。这是一个例子:

Class1.h

@property int myValue

Class1.m

self.myValue = 2

Class2.m

int v = instanceOfClass1.myValue

这是一个关于使用属性的教程的链接:http ://www.raywenderlich.com/2712/using-properties-in-objective-c-tutorial

于 2013-04-03T07:28:57.307 回答
-1
@implementation classA {
    int v;
}

id x = [[classA alloc] init];
x->v = 123;

谷歌搜索“objective c instance variable”并找到了这篇文章。 http://blog.ablepear.com/2010/04/objective-c-tuesdays-instance-variables.html

于 2013-04-03T07:30:35.170 回答