Witam.
Chodzi mi o przekazywanie danych między kontrolerami Root, A, B, itd. W controlerze Root mam pare zmiennych wyświetlanych w textfield i otwarty też drugi controller A i w nim też pewne zmienne.Problem polega na tym, że klikając button w A chcę zmienić wartość danych wyświetlanych w Root ...
Po przejrzeniu części sieci... znalazłem rozwiązanie tego za pomocą delegate albo propertise... Czy ktoś może tworzył coś na podobieństwo mojego problemu i mógł by coś poradzić, doradzić, nakierować na odpowiedni tor ?
Pozdrawiam,
Biacho
Wymana danych między UIViewControllers ?
Started by
Biacho
, 10 Oct 2011 14:58
5 replies to this topic
#1
Posted 10 October 2011 - 14:58
#2
Posted 10 October 2011 - 16:56
Generalnie to w konstruktorze albo przez właściwości.
Albo jeśli współdzielisz jakieś dane między obiektami to możesz w swoim AppDelegate je zaimplementować. Albo użyć singletona (dobrym przykładem jest tutaj klasa np. Settings).
Przykład z AppDelegate:
O Singletonach poczytaj, ja ich nigdy nie używałem.
Albo jeśli współdzielisz jakieś dane między obiektami to możesz w swoim AppDelegate je zaimplementować. Albo użyć singletona (dobrym przykładem jest tutaj klasa np. Settings).
Przykład z AppDelegate:
MyAppDelegate *myAppDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];i potem normalnie odwołujesz się do danych:
myAppDelegate.myProperty
O Singletonach poczytaj, ja ich nigdy nie używałem.
#3
Posted 11 October 2011 - 07:38
Tutaj dyskutowaliśmy o podobnym problemie:
http://myapple.pl/dl...dzy-oknami.html
Ja zaproponowałem właśnie singleton (ObjectContainer razem z implementacją), inni alternatywne pomysły. Na chwilę obecną w kodzie, który jest w tamtym wątku zmieniłbym tylko słownik, z którego dane wyciąga się po kluczach na statycznie typowane referencje/wskaźniki.
Plusem obecnego rozwiązania jest niezmienność klasy ObjectContainer, ale wielkim minusem jest to, że trzeba z palca podawać Stringi z nazwami.
Gdyby zastosować referencje, to wtedy musimy zmieniać klasę jak chcemy dodać do niej coś nowego, ale za to mamy podpowiadanie składni i mniej możliwości popełnienia błędu.
Mam nadzieję, że teraz coś się już rozjaśni
http://myapple.pl/dl...dzy-oknami.html
Ja zaproponowałem właśnie singleton (ObjectContainer razem z implementacją), inni alternatywne pomysły. Na chwilę obecną w kodzie, który jest w tamtym wątku zmieniłbym tylko słownik, z którego dane wyciąga się po kluczach na statycznie typowane referencje/wskaźniki.
Plusem obecnego rozwiązania jest niezmienność klasy ObjectContainer, ale wielkim minusem jest to, że trzeba z palca podawać Stringi z nazwami.
Gdyby zastosować referencje, to wtedy musimy zmieniać klasę jak chcemy dodać do niej coś nowego, ale za to mamy podpowiadanie składni i mniej możliwości popełnienia błędu.
Mam nadzieję, że teraz coś się już rozjaśni
#4
Posted 11 October 2011 - 16:24
Dzięki bardzo za odpowiedź Zdecydowanie rozjaśniło Dzięki wielkie jeszcze raz
#5
Posted 11 October 2011 - 16:26
To [UIApplication sharedApplication] to też jest chyba singleton, prawda?
#6
Posted 11 October 2011 - 21:07
Tak, jest to singleton. Pytanie jest tylko natury czysto architektonicznej: czy delegat aplikacji powinien być workiem na referencje ? Jeśli ktoś lubi mieć porządek, to raczej nie będzie wrzucał wszystkiego do tej jednej biednej klasy
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users