2013-06-25 9 views
-2

Привет У меня вопрос о передаче переменных через NSobject в rootviewcontroller.Передача переменной

У меня есть 2 .h и .m файлы (называемые viewcontroller.m/h и secondviewcontroller.m/h).

Под небольшим примером того, что я пытаюсь сделать.

secondviewcontroller.m

- (NSString *) MyString {

возвращение @ "это строка";

}

secondviewcontroller.h

@interface SecondviewController: NSObject

- (NSString *) MyString;

@end

Как я быть в состоянии передать эту переменную в viewcontroller.m?

Я читал много на Google, но большинство реализаций где неправильно или мои исследования просто плохо XD

+1

Можете ли вы уточнить, что вы спрашиваете? В общем смысле есть много способов сделать то, что вы хотите. Делегаты, или если второй является членом var первого, тогда он может просто вызвать его. Моя основная причина для комментариев здесь - спросить, действительно ли они должны быть viewcontrollers в uikit? Если это так, вы должны вывести из UIViewController, а не NSObject. –

ответ

2

Как я быть в состоянии передать эту переменную в viewcontroller.m?

Вы фактически не показали нам никаких переменных; -myString возвращает постоянную строку. Кроме того, помните, что viewcontroller.m является всего лишь файлом реализации. Вероятно, лучше подумать об объектах, общающихся друг с другом, чем один фрагмент исходного кода, обменивающийся с другим. Я общаюсь с вами, но моя ДНК не связывается с вашей ДНК.

В любом случае, похоже, вы спрашиваете, как один объект может общаться с другим, и ответ заключается в том, что хотя бы один из объектов в разговоре должен знать о другом. Таким образом, экземпляр вашего класса viewcontroller может получить указатель на экземпляр secondviewcontroller из какого-либо другого объекта или создать сам новый экземпляр. Некоторая часть кода в viewcontroller.m может выглядеть следующим образом:

secondviewcontroller *svc = [[secondviewcontroller alloc] initWithNibName:nil bundle:nil]; 
NSString *someString = [svc myString]; 

То не особенно реалистичный пример, но и не является образцом вы предоставили. Урок один и тот же, хотя - объекты обмениваются сообщениями друг с другом, а объекту требуется ссылка на другой объект, чтобы отправить это сообщение. Выяснение того, какие объекты должны знать о том, что другие, как они узнают друг о друге, и какие сообщения, которые они отправляют друг другу, - это дело объектно-ориентированного программирования. В ООП действительно важна не столько сами объекты, сколько то, как они соотносятся друг с другом. Это все о структуре, которую вы создаете с использованием объектов в качестве строительных блоков.

+0

Спасибо, я все еще понимаю это и все еще в фазе обучения. Ваша история об этом заставляет меня выглядеть более яснее –