2011-08-02 9 views
1

間NSStringのを渡します...私は別のクラスにNSStringのを渡したい場合はどう相続人一例他のこれは私が継承を理解し、良い説明を見つけるように見えるんが、私はそれはマスタークラスとそのサブクラスを間にある学んだからできない私はいつも</p> <p>についての混乱があったものですクラス

のサブクラスではないthatsの:

class1.hを

@interface class1 : UIViewController{ 
NSString *string 
} 
@property (nonatomic, retain) NSString *string 
@end 

今私は別のクラスへとその等しい

class2.h 

#import "class1.h" 
@interface class2 : UIViewController{ 


} 

@end 


class2.m 

@implementation class2 

//i want to use the NSString in here, how do i do that? 

おかげで、 ヤコブ

すべての

答えて

2

ファーストクラスで[string retain];を使用しているもので、その文字列を渡したいと言うことができます

@implementation class1 
@synthesize string; 
-(void)viewDidLoad{ 
string = @"IM A STRING AHHH"; 
} 

class1.m 1. 次に、クラス2で、クラス1をインポートします。クラス1のオブジェクトをcls1とする。そして、あなたはあなたがclass1のインスタンスを作成することができますcls1.string;

+0

パーフェクト!ありがとう男で

-(id)initwithParameters:(NSString *)parameter { if(self == [super init]) { // access the paramenter and store in yo u avariable } return self; } 

! – Jacob

1

でアクセスすることができ、その後、あなたは単に

[instance string]; 

または

instance.string 

あなたが作成しない場合を呼び出すstringにアクセスすることができますclass1のインスタンスを定義する方法は、

+(NSString*)getString; 

その後、Smiritiの答えはあなたが行うことができます他に何...

右ですclass2

[class1 getString]; 
+0

Class1はすでにプロパティからgetStringを取得しています。 - これはインスタンスメソッドでNSStringを返す必要があることに注意してください。* – Mark

+0

これはインスタンスメソッドです。 '+(NSString *)getString'を定義すると、文字列を取得するために' class1'のインスタンスを作成する必要はありません。 – Saphrosit

+0

しかし、クラスメソッドはインスタンス上のプロパティの値を取得することはできません – Mark

1

からそれを呼び出す...

init方法overrirde、パラメータとしてごNSStringを渡し、これを使って。

1

クラス2がクラス1からロードされている場合、パラメータとして値を送信できます。クラス1

[[class 2 alloc]initwithParameters: ] 
関連する問題

 関連する問題