как получить значение Nsstring из Nsobject?

У меня есть небольшие сомнения в получении значения из класса Nsobject. Во-первых, я обрабатываю условие проверки входа в систему, когда я нажимаю кнопку входа в систему, я получаю ответ от веб-службы в Nslog, в котором я должен захватить строку с именем LoginStatus, независимо от ее успеха или неудачи. я создал Класс NSObject и его содержит одну строку, мое имя класса NSObject response_value

@property (nonatomic, retain)NSString *Loginstatus;

теперь в классе веб-сервиса:

response.Loginstatus =[[[json valueForKey:@"login_response"]valueForKey:@"status"]objectAtIndex:0];

NsLog (@"%@",response.Loginstatus);

мои запрошенные строковые значения успешно сохранены в строке response.LoginStatus.

Но моя настоящая проблема заключается в том, что в моем Login ViewController

я установил условие для проверки статуса входа в систему, если успешный вход в систему означает, что мне нужно показать предупреждающее сообщение либо в случае успеха, либо в случае неудачи

response_value *response = [[response_value alloc]init];
if ([response.response.Loginstatus isEqualToString:@"Login Successfull"]) {
        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Success" message:response.loginStatusString delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }

но это условие никогда не вызывается, и я также проверил, содержит ли строка NSObject какие-либо значения, но значения равны нулю в Nslog

может кто-нибудь решить мою проблему


person Anand -    schedule 23.02.2015    source источник
comment
response_value *response = [[response_value alloc]init]; Кажется, это совершенно новый объект, а не тот, который вы получили от своего веб-сервиса.   -  person Larme    schedule 23.02.2015
comment
я также сделал те же шаги, чтобы сохранить значение в классе веб-службы, значение сохраняется в классе веб-службы, но когда я повторно использую строку в моем Viewcontroller, она возвращает NUll   -  person Anand -    schedule 23.02.2015
comment
Ваша проблема касается ООП. Выполнение alloc/init должно создать совершенно новый объект. Предположим, что alloc/init — это то же самое, что нажать кнопку печати на пустой странице. Если вы нажмете «Печать», появится целая пустая страница. Вы пишете на нем карандашом (т.е. устанавливаете значение loginstatus). Повторное нажатие на печать покажет новую пустую страницу. Но на ней нет предыдущего рисунка, это новая страница.   -  person Larme    schedule 23.02.2015


Ответы (1)


Что вы хотите сделать, это

response_value *response = [[response_value alloc] init];
response.Loginstatus =[[[json valueForKey:@"login_response"]valueForKey:@"status"]objectAtIndex:0];

Затем передайте объект response вашему myLoginViewController и повторно используйте его вместо объявления целого нового объекта для response_value внутри myLoginViewController.

person Shamsudheen TK    schedule 23.02.2015
comment
не могли бы вы обновить точный код, как вы передаете ответ моему контроллеру представления? - person Anand -; 23.02.2015
comment
c вместо того, чтобы переходить к моему контроллеру представления, мне нужно сохранить значение ответа в классе NSObject, чтобы я мог получить его, когда захочу - person Anand -; 23.02.2015
comment
я уже пробовал твой метод @Ramshad, но Лиам все еще получает только нулевое значение - person Anand -; 24.02.2015