1) Student mus
Transkrypt
1) Student mus
Temat 3. Projektowanie interfejsu użytkonwnika Kalkulator – pierwszy program dla IOS Wymagana wiedza wstępna: 1) Student musi 1) Umieć stworzyć projekt aplikacji konsolowej w XCode z wykorzystaniem Objective-C 2) Umieć skompilować i uruchomić program w XCode 3) Skorzystać z podstawowych klas i funkcji Objective-C 4) Nauczyć się zasad wywoływania metod w Objective-C 5) Znać język C 6) Znać zasady zarządzania pamięcią w komputerze 7) Znać pojecie wskaźnika 8) Znać podstawowe narzędzia tworzenia aplikacji konsolowych w C 9) Znać jezyk Java lub C# lub C++ 10) Umieć tworzyć klasy Objective-C 11) Umieć tworzyć hierarchę klas w Objective-C 12) Umieć wykorzystywać późne wywołanie metod w Objective-C 13) Umieć korzystać z kolekcji 2) Student powinien 1) Umieć tworzyć własne inicjalizatory 2) Znać typ id Cel dydaktyczny 1) Student musi 1) Umieć tworzyć i konfigurować projekty IOS 2) Korzystać z StoryBoard i rozmieszczać elementy na Widokach 3) Umieć stworzyć własny kontroler widoku 4) Tworzyć referencje do obiektów znajdujących się na widoku 5) Obsługiwać domyślne interakcje z obiektami za pomocą własnych metod 6) Znać zasady korzystania z @property i @synthesize 2) Student może 1) Umieć tworzyć własne kontrolki 2) Znać zasady wykorzystania ARC 3) Znać zasady wykorzystania delegatów Zakres tematyczny wykładu laboratorium Niniejsze zajęcia naświetlą sposób tworzenia i uruchamiania aplikacji na urządzenia mobilne pracujące pod kontrolą systemu IOS. Pokażą również jak korzystać z symulatora IOS. Zostanie poruszony temat dostępnych kontrolek systemowych oraz sposoby korzystania z nich. Składniki dobrej aplikacji Xcode Struktura kodu aplikacji IOS Deployment target i wersje Xcode i IOS framework Kompilatory - GCC / LLVM ARC - automatyczne zliczanie referencji Kolejność projektowania interfejsu - samowystarczalne widoki Połączenie między kontrolerem widoku (ViewController) a elementami UI. Apple Mobile Device Programming - 1/5 UIKit - podstawy Załączniki 1. Prezentacja_3.pdf – slajdy z prezentacji 2. Tworzenie_aplikacji_iPhone.mp4 - film pokazujący jak stworzyć prosty program w Xcode z uwzględnieniem dodania elementów interfejsu użytkownika i obsługi związanych z nimi akcji. Exercises Exercise 1 Stwórz projekt pustej aplikacji iPhone (Single View Application). Na automatycznie stworzonym widoku ustaw obiekty z biblioteki kontrolek 1) UIButton - przyciski cyfr i działań 2) UITextField - wyświetlanie wyniku Podpowiedzi 1) Widok możemy edytować otwierając domyślnie stworzony plik MainStoryBoard.storyboard 2) Obiekty umiesczamy na widoku poprzez przeciągnięcie ich z biblioteki obiektów Apple Mobile Device Programming - 2/5 Zadanie 2 Stwórz własną klasę KalkViewController, i ustaw ją jako kontrolera widoku kalkulatora. Podpowiedzi 1) Klasa powinna dziedziczyć z UIViewController #import <UIKit/UIKit.h> @interface UMKTViewController : UIViewController @end 2) Ustawienia klasy jako kontrolera należy wykonać w oknie właściwości widoku. Zadanie 3 Zaimplementuj metody WcisniencieCyfry i WcisnienicieDzialania i skojarz je z odpowiednimi przyciskami. Dodaj ReferencingOutlet do pola tekstowego. Podpowiedzi Apple Mobile Device Programming - 3/5 1) Skojarzenie akcji z metodą następuje poprzez przeciągnięcie akcji z listy akcji do kodu metody w klasie kontrolera. 2) Dodaj pola wynik, dopisujemy i dzialanie, aby pamiętać, jaki jest aktualny wynik i jakie jest aktualne działanie i czy jesteśmy w trybie wpisywania liczby, czy już zaczynamy następną #import <UIKit/UIKit.h> @interface UMKTViewController : UIViewController @property (weak, nonatomic) IBOutlet UITextField *PoleLiczbowe; @property (atomic) double wynik; @property (atomic) bool dopisujemy; @property (atomic) int dzialanie; - (IBAction)WicisniecieCyfry:(id)sender; - (IBAction)wcisnieciedzialania:(id)sender; @end Apple Mobile Device Programming - 4/5 3) W przypadku wciśnięcia cyfry sprawdź, który przycisk został wciśnięty (na podstawie tekstu na nim umieszczonego - (IBAction)WicisniecieCyfry:(id)sender { UIButton* b = (UIButton*)sender; if(self.dopisujemy){ self.PoleLiczbowe.text= [NSString stringWithFormat:@"%@%@", self.PoleLiczbowe.text, b.titleLabel.text]; }else{ self.dopisujemy=true; self.PoleLiczbowe.text = b.titleLabel.text; } } 4) W przypadku wciśnięcia przycisku „=” wykonaj obliczenie, korzystając z klas stworzonych na ćwiczeniach nr 1. Zadania samodzielne Zadanie 1 Dodaj do kalkulatora przycisk wstecz. Zaimplementuj za pomocą NSMutableArray nieskończoną pamięć Zadanie 2 Dodaj obsługę dzielenia przez 0 Zadanie 3 Dodaj przycisk Pamięć i Zerowanie wraz z odpowiednią funkcjonalnością. Apple Mobile Device Programming - 5/5