Передача NSString между классами - PullRequest
1 голос
/ 02 августа 2011

это то, что у меня всегда было путаница в отношении

Кажется, я никогда не смогу найти хорошего объяснения, я понимаю наследование, но из того, что я узнал, это между мастер-классом и его подклассамиЧто если я хочу передать строку NSString другому классу, который не является подклассом другого

Вот пример:

class1.h

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

class1.m

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

Теперь допустим, что я хочу передать эту строку с тем, что равно другому классу

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?

Спасибо, Джейкоб

Ответы [ 4 ]

2 голосов
/ 02 августа 2011

Прежде всего используйте [string retain]; в классе 1. Затем, в классе 2, импортируйте class1.сделать объект класса 1, скажем, cls1.и вы можете получить к нему доступ cls1.string;

1 голос
/ 02 августа 2011

Если класс 2 загружается из класса 1, вы можете отправить значение в качестве параметров.

-(id)initwithParameters:(NSString *)parameter
{

    if(self == [super init])
    {
        // access the paramenter and store in yo u avariable    
    }
    return self;

}

В классе 1

[[class 2 alloc]initwithParameters: ] 
1 голос
/ 02 августа 2011

Ответ Смирити правильный ...

что еще можно сделать, это ..

переопределить метод init, передать ваш NSString в качестве параметра и использовать его.

1 голос
/ 02 августа 2011

Вы можете создать экземпляр class1, а затем получить доступ к string, просто позвонив

 [instance string];

или

 instance.string

Если вы не хотите создаватьэкземпляр class1 вы можете определить метод, такой как

+(NSString*)getString;

, а затем вызвать его из class2

[class1 getString];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...