Odpowiedz na ten temat
Strona 1 z 2 1 2 OstatniaOstatnia
Pokaż wyniki od 1 do 10 z 11

  1. Dołączył
    Mar 2008
    Postów
    57

    Cytuj | #1

    Witam, może mam dość amatorskie pytanie, ale zastanawiam się jak najlepiej to rozwiązać.
    Mam dwie metody (jedną długą, drugą krótką). Chcę wykonać drugą dopiero gdy wykona się pierwsza.
    Najprostszy sposób to
    - (void) a {
    ... wykonywanie
    [self b];
    }

    - (void)b {
    ...wykonywanie
    }

    ale czy da się to zrobić jakoś inaczej?
    - (void) c {
    [self a];
    //kiedy zakończono a
    [self b];
    }



  2. Dołączył
    Jan 2009
    Skąd
    Oberschlesien
    Postów
    349

    Cytuj | #2

    Instrukcje wykonywane są jedna za drugą. Kończy się jedna, zaczyna druga - metoda. Nie wiem jak i po co chciałbyś to inaczej zrobić.
    Komputer: MacBook Alu unibody
    Telefon: Nokia E52
    Odtwarzacz: iPod Touch


  3. Dołączył
    Mar 2008
    Postów
    57

    Cytuj | #3

    Chyba trochę nie końca tak jest.
    Mam w jednej metodzie animację, w drugiej coś innego.
    chcę wykonać drugą metodę po wykonaniu pierwszej (animacji) i niestety nie zawsze jest wykonywana jednej po drugiej...

  4. Avatar Roberto
    Dołączył
    Feb 2007
    Skąd
    Wrocław
    Postów
    11,859

    Cytuj | #4

    ogólnie to takie rzeczy robi się przez delegaty i metody w stylu animationDidStop (jeżeli chodzi o animacje)
    i to jest ładna metoda na zrobienie czegoś takiego. i w tym wypadku powinna zadziałać.
    Ostatnio edytowane przez Roberto ; 12.07.2011 o 21:07
    Komputer: MacBook Pro 13,3" 2,26GHz (Lion 10.7.3)
    Telefon: iPhone 4S
    Tablet: iPad 2 3G
    dlaczego nie korzystasz z opcji szukaj?
    http://ifiboughtyourappalreadycaniup...acappstore.com


  5. Dołączył
    Mar 2008
    Postów
    57

    Cytuj | #5

    Hej, właśnie robiłem takie rzeczy poprzez animationDidStop, jednak w tej metodzie (animationDidStop) muszę wywoływać kolejną (np. metoda b). To jest właściwe rozwiązanie?

  6. Avatar Roberto
    Dołączył
    Feb 2007
    Skąd
    Wrocław
    Postów
    11,859

    Cytuj | #6

    Ogólnie - tak
    Komputer: MacBook Pro 13,3" 2,26GHz (Lion 10.7.3)
    Telefon: iPhone 4S
    Tablet: iPad 2 3G
    dlaczego nie korzystasz z opcji szukaj?
    http://ifiboughtyourappalreadycaniup...acappstore.com


  7. Dołączył
    Mar 2008
    Postów
    57

    Cytuj | #7

    Hej, dzięki, teraz już będę wiedział w jaki sposób rozwiązywać takie problemy.

    Pojawił mi się jeszcze jeden problem i nie wiem czy dobrze do tego podchodzę...
    Mam 3 viewControllery (powiedzmy A,B,C).
    ViewControllerA pokazuje ViewControllerB (poprzez presentModalViewController)
    ViewControllerB pokazuje po wykonaniu pewnej akcji ViewCOntrollerC
    Gdy jestem w ViewControllerC chcę w pewnym momencie powrócić bezpośrednio do ViewControlleraA. Jak to zrobić?

  8. Avatar Roberto
    Dołączył
    Feb 2007
    Skąd
    Wrocław
    Postów
    11,859

    Cytuj | #8

    w tym wypadku powinny siedzieć pewnie w UINavigationControllerze
    wtedy po prostu wrzucasz i ściągasz je ze stosu.
    Komputer: MacBook Pro 13,3" 2,26GHz (Lion 10.7.3)
    Telefon: iPhone 4S
    Tablet: iPad 2 3G
    dlaczego nie korzystasz z opcji szukaj?
    http://ifiboughtyourappalreadycaniup...acappstore.com


  9. Dołączył
    Mar 2008
    Postów
    57

    Cytuj | #9

    Właśnie tak myślałem żeby to zrobić, chociaż myślę też popróbować z protokołami w ViewControllerach, żeby np. wywoływać jakieś metody bezpośrednio z innej klasy. Jak myślicie, która metoda jest lepsza?

  10. Avatar Roberto
    Dołączył
    Feb 2007
    Skąd
    Wrocław
    Postów
    11,859

    Do zarządzania widokami są view controllery
    Do zarządzania kontrolerami są navigation controllery.
    Tak jest wygodnie.
    Komputer: MacBook Pro 13,3" 2,26GHz (Lion 10.7.3)
    Telefon: iPhone 4S
    Tablet: iPad 2 3G
    dlaczego nie korzystasz z opcji szukaj?
    http://ifiboughtyourappalreadycaniup...acappstore.com

Odpowiedz na ten temat
Strona 1 z 2 1 2 OstatniaOstatnia