Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00279 005693 12762069 na godz. na dobę w sumie
iOS 5. Podręcznik programisty - książka
iOS 5. Podręcznik programisty - książka
Autor: Liczba stron: 728
Wydawca: Helion Język publikacji: polski
ISBN: 978-83-246-5121-4 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> programowanie mobilne >> iphone
Porównaj ceny (książka, ebook, audiobook).

Najlepsze przepisy dla każdego dewelopera!

iOS to jeden z najpopularniejszych systemów operacyjnych wykorzystywanych w urządzeniach mobilnych. Znajdziesz go we wszystkich sprzętach Apple - iPhone...ach, iPadach i iPodach. Różnorodność urządzeń gwarantuje Ci dużą liczbę użytkowników, ale z drugiej strony dostarcza wielu nowych wyzwań. Zastanawiasz się, jak poradzić sobie z codziennymi problemami, pojawiającymi się w trakcie tworzenia aplikacji dla iOS?

W tej książce Erica Sadun - autorka bestsellerów i guru programowania na platformie iOS - umieściła wszystkie informacje potrzebne do tego, abyś jak najszybciej zaczął tworzyć znakomite aplikacje dla urządzeń mobilnych na iOS 5. Znajdziesz tu gotowy do natychmiastowego użycia i łatwy w rozbudowie kod źródłowy, co pozwoli Ci uniknąć konieczności szukania własnych rozwiązań metodą prób i błędów. Przykłady przygotowane i przetestowane przez autorkę dotyczą praktycznie każdej dziedziny programowania na platformie iOS, od tworzenia interfejsu użytkownika, poprzez kontrolery widoku, gesty i dotknięcia, aż do obsługi sieci oraz kwestii bezpieczeństwa.

Oto książka poświęcona programowaniu na platformie iOS, na którą czekałeś!



Erica Sadun jest autorką bestsellerów oraz współautorką licznych książek o programowaniu. Opracowała dziesiątki aplikacji na platformę iOS, oferuje usługi konsultingowe w zakresie szybkiego tworzenia prototypów aplikacji. Jej artykuły są publikowane w wielu serwisach, między innymi Ars Technica, O...Reilly i LifeHacker. Obecnie regularnie publikuje w serwisie TUAW. Uzyskała tytuł doktora nauk informatycznych na Georgia Institute of Technology.

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

Tytuł oryginału: The iOS 5 Developer s Cookbook: Core Concepts and Essential Recipes for iOS Programmers (3rd Edition) Tłumaczenie: Robert Górczyński (wstęp, rozdz. 2 – 15), Łukasz Suma (rozdz. 1) ISBN: 978-83-246-5121-4 Authorized translation from the English edition, entitled: THE IOS 5 DEVELOPER’S COOKBOOK: CORE CONCEPTS AND ESSENTIAL RECIPES FOR IOS PROGRAMMERS, Third Edition; ISBN 0321832078; by Erica Sadun; published by Pearson Education, Inc, publishing as Addison Wesley. Copyright © 2012 by Pearson Education, Inc. All rights reserved. No part of this book may be reproduced od transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc. Polish language edition published by HELION S.A., Copyright © 2013. Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji. Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Wydawnictwo HELION dołożyło wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie bierze jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Wydawnictwo HELION nie ponosi również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce. Wydawnictwo HELION ul. Kościuszki 1c, 44-100 GLIWICE tel. 32 231 22 19, 32 230 98 63 e-mail: helion@helion.pl WWW: http://helion.pl (księgarnia internetowa, katalog książek) Pliki z przykładami omawianymi w książce można znaleźć pod adresem: ftp://ftp.helion.pl/przyklady/ios5pp.zip Drogi Czytelniku! Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/ios5pp Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję. Printed in Poland. • Kup książkę • Poleć książkę • Oceń książkę • Księgarnia internetowa • Lubię to! » Nasza społeczność Spis treści 1 Podziökowania .......................................................................................... 21 O autorce .................................................................................................. 22 Wstöp ....................................................................................................... 23 Wprowadzenie do iOS SDK ......................................................................... 33 Programy twórców iOS .............................................................................................. 33 Online Developer Program ................................................................................... 33 Standard Developer Program ............................................................................... 34 Developer Enterprise Program ............................................................................. 35 Developer University Program .............................................................................. 35 Rejestracja ........................................................................................................ 35 Rozpoczöcie pracy ................................................................................................... 35 Pobieranie SDK .................................................................................................. 36 Urzñdzenia do tworzenia aplikacji ......................................................................... 37 Ograniczenia symulatora ..................................................................................... 38 Podäñczenie urzñdzenia do komputera .................................................................. 40 RóĔnice pomiödzy modelami ..................................................................................... 41 Wymiary ekranu .................................................................................................. 41 Kamera ............................................................................................................. 42 DĒwiök ............................................................................................................... 42 Telefonia ........................................................................................................... 43 RóĔnice zwiñzane z Core Location i Core Motion ................................................... 43 Obsäuga wibracji i zbliĔenia .................................................................................. 44 SzybkoĈci procesorów ......................................................................................... 44 OpenGL ES ........................................................................................................ 44 Ograniczenia platformy ............................................................................................. 45 Ograniczenia przestrzeni na dane ......................................................................... 45 Ograniczenia dostöpu do danych .......................................................................... 45 Ograniczenia pamiöci .......................................................................................... 46 Ograniczenia interakcji ........................................................................................ 50 Ograniczenia energetyczne .................................................................................. 50 Ograniczenia aplikacji ......................................................................................... 51 Ograniczenia moĔliwoĈci dziaäaþ uĔytkownika ........................................................ 52 8 iOS 5. Podröcznik programisty Ograniczenia SDK .................................................................................................... 52 Korzystanie z serwisu Provisioning Portal ................................................................... 53 Zdefiniowanie zespoäu ........................................................................................ 54 Uzyskiwanie certyfikatów ..................................................................................... 54 Rejestrowanie urzñdzeþ ...................................................................................... 55 Rejestrowanie identyfikatorów aplikacji ................................................................. 56 Akredytacja ........................................................................................................ 57 Skäadanie projektów iPhone w caäoĈè ........................................................................ 58 Szkielet aplikacji iPhone ...................................................................................... 60 main.m .............................................................................................................. 61 Delegat aplikacji ................................................................................................. 63 Kontroler widoku ................................................................................................ 65 Uwaga na temat przykäadowego kodu prezentowanego w tej ksiñĔce ....................... 66 Komponenty aplikacji iOS ......................................................................................... 67 Hierarchia katalogów aplikacji .............................................................................. 67 Plik wykonywalny ................................................................................................ 67 Plik Info.plist ...................................................................................................... 68 Ikona i obrazy rozruchowe ................................................................................... 69 Pliki narzödzia Interface Builder ........................................................................... 72 Pliki nienaleĔñce do paczki aplikacji ..................................................................... 72 Archiwa IPA ........................................................................................................ 73 Piaskownice ....................................................................................................... 74 Paradygmaty programowania .................................................................................... 74 Programowanie zorientowane obiektowo ............................................................... 75 Model-widok-kontroler ......................................................................................... 75 Podsumowanie ........................................................................................................ 83 Obóz treningowy Objective-C ..................................................................... 85 Jözyk programowania Objective-C .............................................................................. 85 Klasy i obiekty ......................................................................................................... 86 Tworzenie obiektów ............................................................................................ 88 Alokacja pamiöci ................................................................................................ 88 Zwalnianie pamiöci ............................................................................................. 89 Licznik uĔycia obiektu ......................................................................................... 90 Metody, wiadomoĈci i selektory ................................................................................ 90 Niezadeklarowane metody ................................................................................... 91 WskaĒnik do obiektu ........................................................................................... 92 Dziedziczenie metod ........................................................................................... 93 Deklarowanie metod ........................................................................................... 93 Implementacja metody ........................................................................................ 93 Metody klasy ...................................................................................................... 95 Szybkie wyliczenie .............................................................................................. 96 Hierarchia klas ........................................................................................................ 97 WyĈwietlanie informacji ............................................................................................ 98 Podstawy zarzñdzania pamiöciñ .............................................................................. 100 Zarzñdzanie pamiöciñ poprzez MRR ................................................................... 100 Zarzñdzanie pamiöciñ za pomocñ technologii ARC ............................................... 103 2 Spis treĈci 9 WäaĈciwoĈci .......................................................................................................... 104 Hermetyzacja ................................................................................................... 105 Zapis z uĔyciem kropki ...................................................................................... 105 WäaĈciwoĈci i zarzñdzanie pamiöciñ ................................................................... 105 Deklaracja wäaĈciwoĈci ..................................................................................... 106 Tworzenie wäasnych metod typu getter i setter .................................................... 108 Kwalifikatory wäaĈciwoĈci .................................................................................. 110 Funkcja KVC ..................................................................................................... 111 Funkcja KVO ..................................................................................................... 112 Technologia MRR i duĔa wartoĈè licznika uĔycia .................................................. 112 Inne sposoby tworzenia obiektów ....................................................................... 113 Usuwanie obiektu z pamiöci .............................................................................. 114 UĔywanie bloków .................................................................................................... 117 Definiowanie bloku w kodzie .............................................................................. 118 Przypisywanie odniesieþ do bloku ...................................................................... 119 Blok i zmienne lokalne ...................................................................................... 120 Blok i typedef ................................................................................................... 120 Bloki i zarzñdzanie pamiöciñ w technologii MRR .................................................. 121 Inne uĔycie bloków ............................................................................................ 121 Technologia ARC .................................................................................................... 121 Kwalifikatory wäaĈciwoĈci i zmiennych ................................................................ 122 Licznik odniesieþ .............................................................................................. 125 Pula zwalniana automatycznie ........................................................................... 127 Stosowanie technologii ARC — za i przeciw ............................................................. 128 Migracja do ARC ............................................................................................... 128 Wyäñczenie ARC w projekcie .............................................................................. 129 Wyäñczenie ARC dla poszczególnych plików ......................................................... 130 Utworzenie projektu niezgodnego z ARC na bazie szablonu w Xcode ..................... 130 Reguäy dotyczñce ARC ............................................................................................ 131 UĔycie technologii ARC wraz z Core Foundation i rzutowaniem typów danych ............... 132 Rzutowanie pomiödzy Objective-C i Core Foundation ............................................ 132 Wybór odpowiedniego podejĈcia ........................................................................ 134 Rozwiñzania stosowane w trakcie dziaäania aplikacji ............................................ 134 Wskazówki i podpowiedzi dotyczñce pracy z ARC ................................................. 135 Wzorzec Singleton .................................................................................................. 136 Kategorie (rozszerzenia klas) .................................................................................. 137 Protokoäy ............................................................................................................... 138 Definiowanie protokoäu ..................................................................................... 138 Stosowanie protokoäu ....................................................................................... 139 Dodanie wywoäaþ zwrotnych .............................................................................. 139 Deklaracja opcjonalnych wywoäaþ zwrotnych ........................................................ 140 Implementacja opcjonalnych wywoäaþ zwrotnych ................................................. 140 ZgodnoĈè z protokoäem ..................................................................................... 141 Klasy Foundation ................................................................................................... 142 Ciñgi tekstowe ................................................................................................. 142 Liczby i daty ..................................................................................................... 147 Kolekcje .......................................................................................................... 149 10 iOS 5. Podröcznik programisty 3 I jeszcze jedno: przekazywanie wiadomoĈci .............................................................. 154 Implementacja przekazywania wiadomoĈci .......................................................... 155 Operacje czyszczñce ......................................................................................... 156 Superäatwe przekazywanie ................................................................................. 157 Podsumowanie ...................................................................................................... 157 Budowanie pierwszego projektu ............................................................... 159 Utworzenie nowego projektu ................................................................................... 159 Utworzenie aplikacji na podstawie szablonu ............................................................. 161 Utworzenie nowego projektu .............................................................................. 161 Wprowadzenie do przestrzeni roboczej Xcode ...................................................... 164 Przeglñd projektu .............................................................................................. 169 Otwórz plik Storyboard dla iPhone’a ................................................................... 170 Edycja widoku .................................................................................................. 171 Uruchomienie aplikacji ...................................................................................... 173 UĔywanie symulatora .............................................................................................. 174 Symulator — co siö dzieje w tle? ....................................................................... 175 Wspóädzielenie aplikacji symulatora ................................................................... 177 Minimalistyczna wersja aplikacji typu Witaj, Ĉwiecie .................................................. 178 Przeglñdanie API SDK ....................................................................................... 180 Konwersja plików moduäu Interface Builder na ich odpowiedniki w Objective-C ............ 181 UĔywanie moduäu usuwania bäödów ......................................................................... 183 Ustawienie punktu kontrolnego .......................................................................... 184 WyĈwietlenie panelu moduäu usuwania bäödów ................................................... 185 Analiza etykiety ................................................................................................ 186 Ustawienie innego punktu kontrolnego ............................................................... 187 ćledzenie wsteczne .......................................................................................... 188 Konsola ........................................................................................................... 188 Dodanie prostego Ĉledzenia .............................................................................. 188 Zarzñdzanie pamiöciñ ............................................................................................. 189 Sposób: uĔycie narzödzia Instruments do wykrywania wycieków pamiöci .................... 190 Sposób: uĔycie narzödzia Instruments do monitorowania alokacji buforowanych obiektów ........................................................................................ 192 Symulacja sytuacji, gdy w systemie pozostaäo niewiele wolnej pamiöci .................. 193 Analiza kodu .......................................................................................................... 195 Od Xcode do urzñdzenia — interfejs okna Organizer ............................................ 196 Urzñdzenia ....................................................................................................... 197 Informacje ogólne ............................................................................................. 197 Profile akredytacyjne ......................................................................................... 197 Dzienniki zdarzeþ w urzñdzeniu .......................................................................... 197 Aplikacje .......................................................................................................... 199 Konsola ........................................................................................................... 199 Zrzuty ekranu ................................................................................................... 199 Kompilacja dla urzñdzenia iOS ................................................................................ 200 UĔywanie profilu akredytacyjnego programisty ..................................................... 200 Dodanie urzñdzenia, w którym moĔna uruchamiaè tworzone aplikacje ................... 201 Przeanalizuj identyfikator aplikacji ...................................................................... 201 Ustawienie urzñdzenia i toĔsamoĈci podpisywania kodu ...................................... 202 Spis treĈci 11 4 OkreĈlenie bazowej wersji SDK dla aplikacji ........................................................ 203 Kompilacja i uruchomienie aplikacji Hello World .................................................. 204 Podpisywanie skompilowanych aplikacji .............................................................. 205 Wykrywanie platformy docelowej podczas kompilacji ................................................. 205 Sprawdzanie zgodnoĈci podczas dziaäania aplikacji ................................................... 205 Znaczniki pragma mark .......................................................................................... 207 Ukrywanie treĈci metod ..................................................................................... 208 Przygotowanie do dystrybucji ................................................................................... 208 Odszukanie i oczyszczenie aplikacji .................................................................... 208 UĔywanie schematów i akcji .............................................................................. 209 Dodanie wäasnej konfiguracji kompilacji aplikacji ................................................. 210 Informacje dotyczñce dystrybucji tymczasowej ..................................................... 211 Tworzenie pakietu w konfiguracji tymczasowej ..................................................... 212 Dystrybucja tymczasowa OTA .................................................................................. 213 Utworzenie pliku manifestu ............................................................................... 213 Zgäoszenie aplikacji do iTunes App Store ................................................................. 215 Podsumowanie ...................................................................................................... 217 Projektowanie interfejsu uĔytkownika ...................................................... 219 Klasy UIView i UIWindow ......................................................................................... 219 Widoki wyĈwietlajñce dane ................................................................................ 220 Widok przeznaczony do dokonania wyboru .......................................................... 221 Kontrolki .......................................................................................................... 222 Tabele i kontrolki typu Picker ............................................................................. 223 Paski ............................................................................................................... 223 Pasek postöpu i wskaĒnik wykonywania operacji ................................................. 224 Kontroler widoku .................................................................................................... 224 Klasa UIViewController ...................................................................................... 225 Klasa UINavigationController ............................................................................. 225 Klasa UITabBarController .................................................................................. 226 Kontroler widoku podzielonego .......................................................................... 226 Kontroler widoku strony .................................................................................... 227 Kontroler typu Popover ...................................................................................... 227 Kontroler widoku tabeli ..................................................................................... 227 Kontroler ksiñĔki adresowej ............................................................................... 228 Klasa UIImagePicker ......................................................................................... 228 Tworzenie wiadomoĈci e-mail ............................................................................. 228 Klasa UIDocumentInteractionController .............................................................. 229 Klasa GKPeerPickerController ............................................................................ 229 Kontrolery odtwarzania treĈci multimedialnej ...................................................... 229 Geometria widoku .................................................................................................. 229 Pasek stanu ..................................................................................................... 230 Paski nawigacyjny, narzödziowy i kart ................................................................. 231 Klawiatura i kontrolki Picker .............................................................................. 233 Pole tekstowe .................................................................................................. 233 Klasa UIScreen ................................................................................................ 234 Tworzenie interfejsu ............................................................................................... 235 12 iOS 5. Podröcznik programisty UĔycie funkcji Storyboard do utworzenia interfejsu uĔytkownika .................................. 235 Utworzenie nowego projektu .............................................................................. 236 Dodanie kolejnych kontrolerów widoku ............................................................... 236 Organizacja widoków ......................................................................................... 237 Uaktualnienie klas ............................................................................................ 238 Nazwy scen ...................................................................................................... 238 Edycja atrybutów widoku ................................................................................... 239 Dodanie przycisków nawigacyjnych ..................................................................... 239 Dodanie kolejnego kontrolera nawigacyjnego ...................................................... 241 Nadawanie nazw kontrolerom ............................................................................ 241 Pokolorowanie pasków nawigacyjnych ................................................................ 241 Dodanie przycisku ............................................................................................ 242 Zmiana poczñtkowo wyĈwietlanego kontrolera .................................................... 242 Dodanie kodu usuwajñcego widok z ekranu ........................................................ 242 Uruchomienie aplikacji ...................................................................................... 243 UĔycie okien typu Popover ...................................................................................... 243 Dodanie kontrolera nawigacyjnego ..................................................................... 244 Zmiana klasy kontrolera widoku ......................................................................... 244 Dostosowanie do wäasnych potrzeb widoku okna Popover .................................... 245 Utworzenie poäñczeþ ......................................................................................... 245 Edycja kodu ..................................................................................................... 245 UĔycie moduäu Interface Builder do utworzenia konwertera temperatur ....................... 247 Utworzenie nowego projektu .............................................................................. 247 Dodanie plików ................................................................................................. 247 Interface Builder ............................................................................................... 248 Dodanie etykiet i widoków ................................................................................. 249 Wäñczenie zmiany orientacji ............................................................................... 249 Test interfejsu .................................................................................................. 249 Dodanie outletów i akcji .................................................................................... 249 Dodanie metody konwersji ................................................................................ 251 Uaktualnienie rodzaju klawiatury ........................................................................ 251 Poäñczenie interfejsu iPada ............................................................................... 252 Röczna budowa interfejsu aplikacji konwertera ......................................................... 253 Poäñczenie wszystkiego razem ........................................................................... 255 Tworzenie, wczytywanie i uĔywanie interfejsów hybrydowych ...................................... 256 Utworzenie nowego pliku .xib przeznaczonego na interfejs uĔytkownika ................. 256 Dodanie widoku i wypeänienie go treĈciñ ............................................................. 257 Nadanie wartoĈci tag widokom .......................................................................... 257 Edycja kodu ..................................................................................................... 257 Projektowanie w celu zapewnienia obrotu interfejsu .................................................. 258 Wäñczenie zmiany ukäadu ........................................................................................ 258 Automatyczna zmiana wielkoĈci .............................................................................. 261 Przykäad automatycznej zmiany wielkoĈci ............................................................ 262 Omówienie opcji automatycznej zmiany wielkoĈci ................................................ 264 Przenoszenie widoków ............................................................................................ 264 Sposób: przenoszenie widoków poprzez naĈladowanie szablonów .............................. 265 I jeszcze jedno: kilka doskonaäych podpowiedzi dotyczñcych moduäu Interface Builder .... 268 Podsumowanie ...................................................................................................... 270 5 6 Spis treĈci 13 Praca z kontrolerem widoku .................................................................... 271 Praca z kontrolerem nawigacyjnym i widokiem podzielonym ....................................... 271 UĔywanie stosów i kontrolerów nawigacyjnych ..................................................... 273 Umieszczanie i usuwanie kontrolera ze stosu ..................................................... 273 Klasa elementu nawigacyjnego .......................................................................... 274 Kontroler modalny ............................................................................................ 275 Sposób: budowa prostego menu skäadajñcego siö z dwóch elementów ...................... 275 Sposób: dodanie kontrolki segmentowanej .............................................................. 277 Sposób: nawigacja pomiödzy kontrolerami widoków .................................................. 279 Sposób: wyĈwietlenie wäasnego widoku modalnego zawierajñcego informacje ............. 281 Sposób: kontroler widoku strony ............................................................................. 285 WäaĈciwoĈci ksiñĔki .......................................................................................... 285 Opakowanie implementacji ................................................................................ 286 Omówienie kodu sposobu ................................................................................. 290 Sposób: przewijanie stron w kontrolerze widoku strony ............................................. 291 Sposób: pasek kart ................................................................................................ 292 Sposób: zapamiötanie stanu paska kart .................................................................. 295 Sposób: utworzenie kontrolera widoku podzielonego ................................................. 298 Sposób: utworzenie aplikacji uniwersalnej uĔywajñcej widoku podzielonego ................ 302 Sposób: wäasny pojemnik i przejĈcie segue .............................................................. 304 PrzejĈcia pomiödzy kontrolerami widoków ........................................................... 308 I jeszcze jedno: moduä Interface Builder i kontroler paska kart ................................... 309 Podsumowanie ...................................................................................................... 310 Tworzenie widoków i animacji .................................................................. 313 Hierarchia widoku .................................................................................................. 313 Sposób: odkrywanie drzewa hierarchii widoku .......................................................... 315 Sposób: wykonywanie zapytaþ do podwidoków ......................................................... 315 Zarzñdzanie podwidokami ....................................................................................... 317 Dodanie podwidoku .......................................................................................... 317 Zmiana kolejnoĈci i usuwanie podwidoków ......................................................... 318 Wywoäania zwrotne widoku ................................................................................ 318 Sposób: oznaczanie widoków wartoĈciami tag oraz pobieranie widoków ..................... 319 UĔywanie wartoĈci tag do wyszukiwania widoków ................................................ 319 Sposób: nadawanie nazw widokom ......................................................................... 321 Obiekty powiñzane ............................................................................................ 321 UĔycie säownika nazw ........................................................................................ 323 Geometria widoku .................................................................................................. 326 Ramka ............................................................................................................. 326 Przeksztaäcenia ................................................................................................ 327 Systemy wspóärzödnych .................................................................................... 328 Sposób: praca z ramkñ widoku ............................................................................... 328 Dostosowanie wielkoĈci .................................................................................... 329 Struktura CGRect i punkt Ĉrodkowy .................................................................... 330 Inne metody narzödziowe .................................................................................. 331 Sposób: losowe przeniesienie widoku ...................................................................... 334 Sposób: przeksztaäcenie widoku ............................................................................. 336 WyĈwietlacz i cechy interakcji ................................................................................. 337 14 iOS 5. Podröcznik programisty 7 Animacje obiektu UIView ........................................................................................ 338 Transakcyjne tworzenie animacji UIView ............................................................. 338 Tworzenie animacji za pomocñ bloku .................................................................. 340 Animacja warunkowa ........................................................................................ 340 Sposób: pojawianie siö i znikanie widoku ................................................................. 341 Sposób: zamiana widoków ...................................................................................... 342 Sposób: obrót widoku ............................................................................................ 343 Sposób: uĔywanie przejĈè Core Animation ................................................................ 343 Sposób: efekt odbicia pojawiajñcego siö widoku ...................................................... 345 Sposób: animacja widoku obrazu ............................................................................ 346 I jeszcze jedno: dodanie odbicia do widoku .............................................................. 347 Podsumowanie ...................................................................................................... 349 Praca z obrazami ..................................................................................... 351 Wyszukiwanie i wczytywanie obrazów ....................................................................... 351 Odczyt danych obrazu ....................................................................................... 353 Sposób: uzyskanie dostöpu do zdjöè z albumu zdjöè ................................................. 356 Praca z klasñ UIImagePickerController ................................................................ 358 Pobranie informacji z edycji obrazu ..................................................................... 360 Sposób: pobieranie obrazu z adresu URL zasobu ..................................................... 360 Sposób: pstrykanie zdjöè i ich zapis w albumie zdjöè ................................................ 362 Wybór pomiödzy aparatami ................................................................................ 365 Zapis obrazów w katalogu Documents ..................................................................... 366 Sposób: wysyäanie obrazów za pomocñ wiadomoĈci e-mail ........................................ 367 Utworzenie treĈci wiadomoĈci ............................................................................ 368 WyĈwietlenie kontrolera tworzenia wiadomoĈci ................................................... 369 Automatyzacja wykonywania zdjöè ........................................................................... 370 UĔywanie wäasnych nakäadek na podglñdzie aparatu ................................................. 370 Sposób: uzyskanie dostöpu do aparatu z poziomu AVFoundation ............................... 371 Aparat jest wymagany ....................................................................................... 372 Sprawdzanie dostöpnoĈci i rodzaju aparatu ........................................................ 372 Utworzenie sesji aparatu ................................................................................... 373 Przeäñczanie pomiödzy aparatami ...................................................................... 375 Podglñd dostarczany przez aparat ...................................................................... 375 UäoĔenie podglñdu z aparatu ............................................................................. 376 EXIF ................................................................................................................. 376 Geometria obrazu ............................................................................................. 377 Tworzenie klasy pomocniczej do obsäugi aparatu ................................................. 379 Sposób: dodanie filtru Core Image .......................................................................... 379 Sposób: wykrywanie twarzy za pomocñ Core Image ................................................... 381 Wyodröbnianie twarzy ............................................................................................. 386 Sposób: praca z obrazami rastrowymi ...................................................................... 387 Rysowanie w kontekĈcie rastrowym ................................................................... 388 Przetwarzanie obrazu ........................................................................................ 390 RzeczywistoĈè dotyczñca przetwarzania obrazów ................................................. 391 Sposób: pobieranie próbek na Ĕywo ........................................................................ 392 Konwersja na HSB ............................................................................................ 394 Spis treĈci 15 8 Sposób: utworzenie miniatur z obrazów ................................................................... 395 Wykonywanie zrzutu ekranu widoku ......................................................................... 397 Rysowanie w plikach PDF ....................................................................................... 398 Tworzenie nowego obrazu zupeänie od poczñtku ....................................................... 399 Sposób: wyĈwietlenie obrazu w przewijanym widoku ................................................. 400 Tworzenie przewijanej strony zawierajñcej wiele obrazów ...................................... 402 Podsumowanie ...................................................................................................... 402 Gesty i dotkniöcia ................................................................................... 405 Dotkniöcia ............................................................................................................. 405 Fazy ................................................................................................................ 406 Dotkniöcia i metody ich obsäugi ......................................................................... 407 Dotykane widoki ............................................................................................... 407 Obsäuga wielu dotkniöè ..................................................................................... 408 Procedury rozpoznawania gestów ....................................................................... 408 Sposób: dodanie prostej moĔliwoĈci bezpoĈredniej manipulacji interfejsem ................ 409 Sposób: dodanie procedury rozpoznawania gestu przesuniöcia .................................. 410 Sposób: jednoczesne uĔywanie wielu procedur rozpoznawania gestów ....................... 412 Usuwanie konfliktów pomiödzy procedurami rozpoznawania gestów ...................... 414 Sposób: ograniczenie ruchu .................................................................................... 415 Sposób: testowanie miejsca dotkniöcia ................................................................... 417 Sposób: testowanie grafiki rastrowej ....................................................................... 418 Sposób: zapewnienie trwaäoĈci podczas bezpoĈredniej manipulacji interfejsem .......... 420 Przechowywanie informacji o stanie ................................................................... 421 Przywracanie informacji o stanie ........................................................................ 422 Sposób: zapewnienie trwaäoĈci poprzez archiwizacjö ................................................. 423 Sposób: dodanie obsäugi opcji cofnij ....................................................................... 425 Utworzenie menedĔera opcji cofnij ..................................................................... 425 Obsäuga operacji cofniöcia dla widoku potomnego ............................................... 426 Praca z paskiem nawigacyjnym .......................................................................... 426 Rejestracja operacji cofniöcia ............................................................................ 427 Dodanie obsäugi operacji cofniöcia poprzez potrzñĈniöcie urzñdzeniem ................. 429 Dodanie nazwy akcji dla operacji cofniöcia i powtórzenia (krok opcjonalny) ............ 430 Zapewnienie obsäugi edycji poprzez potrzñĈniöcie ................................................ 430 Wymuszenie statusu First Responder ................................................................. 430 Sposób: rysowanie w miejscu dotkniöcia ekranu ...................................................... 431 Sposób: päynne rysowanie ...................................................................................... 432 Sposób: wykrywanie okrögów .................................................................................. 435 Utworzenie wäasnej procedury rozpoznawania gestów .......................................... 439 Sposób: uĔywanie wielu dotkniöè ............................................................................ 441 Przytrzymanie ĈcieĔek dotkniöè ............................................................................... 443 I jeszcze jedno: przeciñganie z widoku przewijanego ................................................. 444 Podsumowanie ...................................................................................................... 448 9 Tworzenie i uĔywanie kontrolek ................................................................ 449 Klasa UIControl ..................................................................................................... 449 Rodzaje kontrolek ............................................................................................. 449 Zdarzenia kontrolek .......................................................................................... 450 16 iOS 5. Podröcznik programisty Przyciski ................................................................................................................ 452 Dodawanie przycisków w module Interface Builder .................................................... 453 Grafika ............................................................................................................ 454 ãñczenie przycisków z akcjami ........................................................................... 455 Przyciski, które nie sñ przyciskami ..................................................................... 455 Tworzenie wäasnych przycisków w Xcode .................................................................. 456 Tekst przycisku wyĈwietlany w wielu wierszach ......................................................... 458 Umieszczenie w przycisku animowanych elementów ................................................. 459 Sposób: animacja reakcji przycisku ......................................................................... 459 Sposób: dodanie suwaka wraz z wäasnñ gaäkñ .......................................................... 461 Dostosowanie egzemplarza UISlider do wäasnych potrzeb .................................... 461 Poprawa skutecznoĈci ....................................................................................... 465 Proxy wyglñdu ................................................................................................... 465 Sposób: tworzenie kontrolki segmentowanej umoĔliwiajñcej odpowiedĒ na drugie stukniöcie ............................................................................................ 466 Sposób: utworzenie podklasy klasy UIControl ........................................................... 468 Utworzenie egzemplarza UIControl ..................................................................... 470 ćledzenie dotkniöè ........................................................................................... 470 Przekazywanie zdarzeþ ...................................................................................... 471 Praca z przeäñcznikami i stepperami ........................................................................ 471 Sposób: utworzenie suwaka z gwiazdkami ............................................................... 472 Sposób: budowa tarczy dotykowej ........................................................................... 476 Dodanie kontrolki wskaĒnika strony ......................................................................... 478 Sposób: utworzenie wäasnego rozwiñzania przeznaczonego do przewijania stron ......... 480 Utworzenie paska narzödziowego ............................................................................ 484 Utworzenie paska narzödziowego w kodzie ......................................................... 485 Podpowiedzi dotyczñce paska narzödziowego w iOS 5 ......................................... 487 Podsumowanie ...................................................................................................... 487 Praca z tekstem ...................................................................................... 489 Sposób: ukrycie klawiatury po zakoþczeniu edycji tekstu w kontrolce UITextField ........ 489 WäaĈciwoĈci dotyczñce cech tekstu .................................................................... 491 Inne wäaĈciwoĈci dotyczñce pól tekstowych ........................................................ 492 Sposób: dostosowanie widoków wokóä klawiatur ...................................................... 493 Sposób: przykrycie widoku tekstu wäasnym widokiem pomocniczym ........................... 495 Sposób: zmiana wielkoĈci widoku po podäñczeniu klawiatury sprzötowej ..................... 497 Sposób: utworzenie wäasnego widoku wprowadzania danych ..................................... 500 Sposób: widoki potrafiñce obsäuĔyè dane wejĈciowe w postaci tekstu ........................ 504 Sposób: dodanie wäasnego widoku danych wejĈciowych do widoku nietekstowego ...... 507 Dodanie dĒwiöku klikniöcia ................................................................................ 509 Sposób: zbudowanie lepszego edytora tekstów ........................................................ 509 Sposób: filtrowanie tekstu ...................................................................................... 511 Sposób: wykrywanie wzorców tekstu ........................................................................ 513 Tworzenie wäasnych wyraĔeþ .............................................................................. 514 Enumeracja wyraĔenia regularnego ..................................................................... 516 Wykrywanie danych ........................................................................................... 516 Dodanie wbudowanego detektora danych ........................................................... 517 10 Spis treĈci 17 11 Sposób: wykrywanie bäödów w UITextView ................................................................ 517 Wyszukiwanie ciñgów tekstowych ....................................................................... 518 Sposób: wyĈwietlenie dostöpnych czcionek .............................................................. 519 Sposób: dodanie wäasnych czcionek do aplikacji ...................................................... 520 Sposób: podstawy pracy z Core Text i ciñgami tekstowymi z atrybutami ...................... 521 UĔycie pseudo-HTML do utworzenia tekstu z atrybutami ............................................ 526 Sposób: podziaä na strony w Core Text .................................................................... 531 Sposób: generowanie tekstu do dokumentu PDF ...................................................... 532 Sposób: wyĈwietlanie tekstu w nieregularnych ksztaätach .......................................... 533 Sposób: wyĈwietlanie tekstu na ĈcieĔce .................................................................. 536 WyĈwietlanie tekstu na ĈcieĔkach Béziera .......................................................... 541 WyĈwietlanie proporcjonalne ............................................................................. 541 WyĈwietlanie liter ............................................................................................. 542 I jeszcze jedno: duĔy tekst na ekranie iPhone’a ........................................................ 543 Podsumowanie ...................................................................................................... 546 Tworzenie widoków tabel i zarzñdzanie nimi ............................................. 547 Wprowadzenie do klas UITableView i UITableViewController ....................................... 547 Utworzenie tabeli .............................................................................................. 548 Sposób: implementacja prostej tabeli ...................................................................... 550 Wypeänienie tabeli ............................................................................................ 550 Metody Ēródäa danych ....................................................................................... 551 Ponowne uĔycie komórek .................................................................................. 552 Udzielanie odpowiedzi na dziaäania uĔytkownika .................................................. 552 Kolor zaznaczonej komórki ................................................................................ 552 Zmiana koloru täa tabeli .................................................................................... 553 Typy komórek ................................................................................................... 553 Sposób: utworzenie wäasnej komórki w module Interface Builder ............................... 554 Dodanie wäasnych atrybutów zaznaczonej komórki ............................................... 556 Zdefiniowanie naprzemiennych kolorów komórek ................................................. 556 Usuniöcie efektu zaznaczenia komórki ............................................................... 557 Tworzenie tabel zgrupowanych ........................................................................... 557 Sposób: zapamiötanie stanu kontrolki we wäasnej komórce ....................................... 558 Wizualizacja ponownego wykorzystania komórki .................................................. 560 Utworzenie „wybranej” komórki tabeli ................................................................. 561 Praca z przyciskiem typu disclosure ................................................................... 562 Sposób: edycja tabeli ............................................................................................. 564 WyĈwietlanie kontrolek usuwania komórek ......................................................... 567 Usuniöcie z ekranu kontrolek usuwania komórek ................................................ 567 Obsäuga Ĕñdaþ usuniöcia komórek ..................................................................... 567 Obsäuga funkcji cofniöcia operacji ...................................................................... 567 Gest machniöcia w komórce .............................................................................. 568 Dodawanie komórek ......................................................................................... 568 Zmiana kolejnoĈci komórek ............................................................................... 568 Algorytmiczne sortowanie tabeli ......................................................................... 569 Sposób: praca z sekcjami ....................................................................................... 570 Tworzenie sekcji ............................................................................................... 571 Zliczanie sekcji i rekordów ................................................................................. 572 18 iOS 5. Podröcznik programisty Zwrot komórek ................................................................................................. 572 Utworzenie nagäówka sekcji ............................................................................... 573 Utworzenie indeksu sekcji ................................................................................. 573 Mechanizm delegacji w sekcjach ....................................................................... 574 Sposób: wyszukiwanie w tabeli ............................................................................... 575 Utworzenie kontrolera opcji wyszukiwania ........................................................... 575 Utworzenie metod Ēródäa danych ........................................................................ 576 Metody delegata ............................................................................................... 578 UĔywanie indeksu wyszukiwania ......................................................................... 578 Dostosowanie nagäówka i stopki do wäasnych potrzeb ......................................... 579 Sposób: dodanie do tabeli opcji „pociñgnij, aby odĈwieĔyè” ....................................... 581 Utworzenie w kodzie wäasnej tabeli zgrupowanej ....................................................... 583 Utworzenie zgrupowanej tabeli ustawieþ ............................................................. 583 Sposób: utworzenie tabeli zawierajñcej wiele tarcz ................................................... 585 Utworzenie egzemplarza UIPickerView ................................................................ 586 Sposób: uĔycie kontrolki UIPickerView z widokami .................................................... 588 Sposób: uĔycie egzemplarza UIDatePicker ............................................................... 590 Utworzenie egzemplarza UIDatePicker ................................................................ 592 I jeszcze jedno: formatowanie daty .......................................................................... 592 Podsumowanie ...................................................................................................... 595 12 Rozpoczöcie pracy z Core Data ................................................................ 597 Wprowadzenie do Core Data ................................................................................... 597 Utworzenie i edycja plików modelu ..................................................................... 598 Generowanie plików klasy ................................................................................. 600 Utworzenie kontekstu Core Data ........................................................................ 600 Dodawanie obiektów ......................................................................................... 601 Wykonywanie zapytaþ do bazy danych ................................................................ 603 Wykrywanie zmian ............................................................................................ 604 Usuwanie obiektów ........................................................................................... 604 Sposób: uĔycie Core Data jako Ēródäa danych tabeli .................................................. 605 Sposób: wyszukiwanie w tabeli a Core Data ............................................................. 608 Sposób: edycja danych na Ĕywo w widoku tabeli Core Data ....................................... 610 Sposób: implementacja funkcji cofnij i przywróè w Core Data ..................................... 612 Podsumowanie ...................................................................................................... 615 13 Komunikaty ostrzeĔeþ wyĈwietlane uĔytkownikowi ................................... 617 BezpoĈrednia komunikacja z uĔytkownikiem poprzez komunikaty ............................... 617 Utworzenie prostego komunikatu ....................................................................... 617 Delegat komunikatu .......................................................................................... 618 WyĈwietlenie komunikatu .................................................................................. 620 Rodzaje komunikatów ....................................................................................... 620 „Proszö czekaè” — wyĈwietlenie uĔytkownikowi paska postöpu ................................. 621 UĔywanie klasy UIActivityIndicatorView ................................................................ 621 UĔywanie klasy UIProgressView .......................................................................... 622 Sposób: komunikat bez przycisków ......................................................................... 623 Utworzenie päywajñcego wskaĒnika postöpu ........................................................ 625 Sposób: utworzenie komunikatu modalnego w pötli dziaäania .................................... 625 Spis treĈci 19 Sposób: uĔycie metody o zmiennej liczbie argumentów do utworzenia komunikatu ...... 628 WyĈwietlenie prostego menu .................................................................................. 629 Przewijanie menu ............................................................................................. 631 WyĈwietlanie tekstu w egzemplarzu UIActionSheet .............................................. 631 Sposób: utworzenie wäasnego widoku komunikatu .................................................... 631 Widok, który moĔna nacisnñè ............................................................................ 633 Sposób: proste okno typu Popover .......................................................................... 633 Sposób: powiadomienia lokalne .............................................................................. 635 WskaĒniki komunikatów ......................................................................................... 636 UĔywanie plakietek w aplikacji ........................................................................... 636 Sposób: proste komunikaty audio ........................................................................... 636 DĒwiöki systemowe ........................................................................................... 637 Wibracja .......................................................................................................... 638 Komunikaty ...................................................................................................... 638 OpóĒnienia ....................................................................................................... 639 I jeszcze jedno: wyĈwietlenie komunikatu i umoĔliwienie dostosowania poziomu gäoĈnoĈci .......................................................................... 640 Podsumowanie ...................................................................................................... 641 14 MoĔliwoĈci urzñdzenia ...................
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

iOS 5. Podręcznik programisty
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: