Tai Lieu Huong Dan code ios

Embed Size (px)

DESCRIPTION

guide code IOS

Citation preview

  • 5/28/2018 Tai Lieu Huong Dan code ios

    1/420

    2013

    Nguyn Anh Tip - Cao Thanh V

    i Hc Lc Hng

    20/11/2013

    Ti Liu Hng Dn Xy Dngng Dng iPhone

  • 5/28/2018 Tai Lieu Huong Dan code ios

    2/420

    MC LC

    CHNG I CHUN BTRC KHI BT U XY DNG NG DNG ........... 1

    1.1 CHUN BHIU HNH MAC OS .................................................................... 21.1.1 Lp Trnh ng Dng Iphone Trn Windows .................................................. 2

    1.1.2 SDng Sn Phm Chnh Hng Apple ............................................................ 3

    1.1.3 Chy Hiu Hnh Mac Os Trn Pc/Laptop Intel/AmdTi Sao Khng?....................................................................................................................................... 5

    1.2 PHN MM XCODE .................................................................................................. 7

    1.2.1 Ci t Thng Qua Bn Ti VTTrang Dnh Cho Developer .................. 8

    1.2.2 Ci t Thng Qua Apple Mac Store ............................................................. 101.2.3 Ci t TBn Xcode c Chia STrn Internet .................................... 11

    CHNG II TM HIU XCODE V IOS SIMULATOR ......................................... 12

    2.1 TM HIU XCODE 5 ................................................................................................ 13

    2.1.1 Gii Thiu VXcode 5 ..................................................................................... 13

    2.1.2 Thao Tc To ng Dng Mi ......................................................................... 16

    2.1.3 Tm Hiu Giao Din Xcode V Mt STnh Nng....................................... 20

    2.1.4 Thit KGiao Din ........................................................................................... 262.1.5 Vit Code ........................................................................................................... 29

    2.1.6 Thc Thi V Kim Tra Li Ca ng Dng ................................................... 34

    2.2 TM HIU IOS SIMULATOR ................................................................................. 38

    2.2.1 Gii Thiu iOS Simulator ................................................................................ 38

    2.2.2 Tm Hiu iOS Simulator .................................................................................. 38

    CHNG III NGN NGOBJECTIVE-C ................................................................ 48

    3.1 GII THIU NGN NGOBJECTIVED-C ........................................................ 49

    3.2 KHAI BO BIN - CCH SDNG ..................................................................... 49

    3.2.1 Bin ..................................................................................................................... 49

    3.2.2 Quy Tc t Tn ............................................................................................... 50

    3.3 KIU DLIU .......................................................................................................... 50

  • 5/28/2018 Tai Lieu Huong Dan code ios

    3/420

    3.4 PHP TON ............................................................................................................... 51

    3.5 CH THCH CODE .................................................................................................. 51

    3.6 XUT DLIU RA MN HNH ............................................................................ 52

    3.7 FUNCTION ................................................................................................................. 54

    3.7.1 nh Ngha......................................................................................................... 54

    3.7.2 Phng Thc Khng C Tham STruyn Vo ........................................... 54

    3.7.3 Phng Thc C 1 Tham STruyn Vo ...................................................... 55

    3.7.4 Phng Thc C Nhiu Tham STruyn Vo.............................................. 55

    3.8 CU TRC IU KIN ........................................................................................... 57

    3.8.1 Cu Lnh If ....................................................................................................... 57

    3.8.2 Cu Lnh IfElse ............................................................................................ 57

    3.8.3 Cu Lnh Switch - Case ................................................................................... 58

    3.9 Cu Trc Lp .............................................................................................................. 59

    3.9.1 Vng Lp For .................................................................................................... 59

    3.9.2 Vng Lp While ................................................................................................ 59

    3.9.3 Vng Lp Do-While .......................................................................................... 60

    3.10 MNG........................................................................................................................ 61

    3.10.1 nh Ngha....................................................................................................... 61

    3.10.2 Mng Nsarray ................................................................................................. 61

    3.11 CHUII TNG NSSTRING...................................................................... 62

    3.11.1 Khi To Chui ............................................................................................... 62

    3.11.2 i Tng NSString ....................................................................................... 63

    3.11.3 Tm Kim Bn Trong Chui .......................................................................... 63

    3.11.4 Tm Chui V Thay N Thnh Chui Khc ................................................ 64

    3.11.5 Xo Ni Dung Bn Trong Chui ................................................................... 64

    3.11.6 Ct Chui ......................................................................................................... 65

    3.11.7 Chn K TVo Trong Chui ...................................................................... 66

    3.11.8 Chn K TVo Cui Chui ........................................................................ 66

    3.11.8 So Snh Chui ................................................................................................. 67

    3.11.9 So Snh Chui Vi K Tu V Cui Chui ........................................... 67

  • 5/28/2018 Tai Lieu Huong Dan code ios

    4/420

    3.11.10 Chuyn i Hnh Dng Ca Ch................................................................ 68

    3.11.11 Chuyn Chui Thnh Dng S.................................................................... 70

    CHNG IV MT STHAO TC C BN ............................................................. 72

    4.1 APP ICONLOADING SCREEN .......................................................................... 73

    4.1.1 App Icon............................................................................................................. 73

    4.1.2 Loading Screen .................................................................................................. 75

    4.2 THAY I APP NAME ............................................................................................ 76

    4.3 N STATUS BAR ...................................................................................................... 78

    4.4 BACKGROUND ......................................................................................................... 79

    4.4.1 Background Image ............................................................................................ 79

    4.4.2 Background Color ............................................................................................ 83

    4.5 THM FRAMEWORK ............................................................................................. 84

    CHNG V MT SI TNG C BN ............................................................ 86

    5.1 I TNG LABELBUTTONTEXT FIELD ............................................... 87

    5.1.1 Gii Thiu .......................................................................................................... 87

    5.1.2 V D.................................................................................................................. 90

    5.2 KT NI C SDLIU VI SQLITE ............................................................. 94

    5.2.1 Gii Thiu .......................................................................................................... 94

    5.2.2 Ci t Sqlite Manager Cho Firefox .............................................................. 94

    5.2.3 Cu Hnh ng Dng Tng Tc Vi Sqlite ............................................. 95

    5.2.4 Cc Hm Trong Sqlite ...................................................................................... 96

    5.2.5 V D.................................................................................................................. 99

    5.3 SDNG CAMERA IPHONE .............................................................................. 109

    5.3.1 Gii Thiu ........................................................................................................ 109

    5.3.2 V D................................................................................................................ 109

    5.4 UIIMAGE .................................................................................................................. 113

    5.4.1 Gii Thiu ........................................................................................................ 113

    5.4.2 Cc nh Dng nh HTrTrn Iphone ................................................... 114

    5.4.3 V D................................................................................................................ 114

    5.5 UIALERT VIEW ...................................................................................................... 121

  • 5/28/2018 Tai Lieu Huong Dan code ios

    5/420

    5.5.1 Gii Thiu ........................................................................................................ 121

    5.5.2 c im .......................................................................................................... 121

    5.5.3 V D................................................................................................................ 122

    5.6 UISLIDER ................................................................................................................. 124

    5.6.1 Gii Thiu ........................................................................................................ 124

    5.6.2 c im .......................................................................................................... 125

    5.6.3 V D................................................................................................................ 125

    5.7 UIWEBVIEW ........................................................................................................... 128

    5.7.1 Gii Thiu ........................................................................................................ 128

    5.7.2 V D................................................................................................................ 129

    5.8 ACTIVITY INDICATOR VIEW ............................................................................ 132

    5.8.1 Gii Thiu ........................................................................................................ 132

    5.8.2 V D................................................................................................................ 132

    5.9 ACTIONSHEET ....................................................................................................... 136

    5.9.1 Gii Thiu ........................................................................................................ 136

    5.9.2 c im .......................................................................................................... 136

    5.9.3 V D................................................................................................................ 137

    5.10 MK MAP VIEW ..................................................................................................... 138

    5.10.1 Gii Thiu ...................................................................................................... 138

    5.10.2 V D.............................................................................................................. 139

    5.11 TABLE VIEW CONTROLLER ........................................................................... 143

    5.11.1 Gii Thiu ...................................................................................................... 143

    5.11.2 V D.............................................................................................................. 143

    5.12 SEARCH BAR ........................................................................................................ 147

    5.12.1 Gii Thiu ...................................................................................................... 147

    5.12.2 V D.............................................................................................................. 148

    5.13 TRUYN DLIU GIA CC VIEW .............................................................. 152

    5.13.1 Gii Thiu ...................................................................................................... 152

    5.13.2 V D.............................................................................................................. 152

    CHNG VI HNG DN XY DNG PHN MM .......................................... 157

  • 5/28/2018 Tai Lieu Huong Dan code ios

    6/420

    6.1 PHN MM KIM TRA M VIN ........................................................................ 158

    6.1.1 Gii Thiu ........................................................................................................ 158

    6.1.2 Chun B.......................................................................................................... 158

    6.1.3 Cu Trc Phn Mm ...................................................................................... 158

    6.1.4 C ChVn Hnh ........................................................................................... 159

    6.1.5 Tnh Nng........................................................................................................ 160

    6.1.6 Tin Hnh ........................................................................................................ 163

    6.2 PHN MM TM KIM A IM XUNG QUANH (PLACESNEARME) .. 220

    6.2.1 Gii Thiu ........................................................................................................ 220

    6.2.2 Chun B.......................................................................................................... 220

    6.2.3 Cu Trc Phn Mm ...................................................................................... 220

    6.2.4 C ChVn Hnh Ca Placesnearme .......................................................... 221

    6.2.5 Tnh Nng........................................................................................................ 222

    6.2.6 Tin Hnh ........................................................................................................ 226

    CHNG VII A NG DNG LN IPHONE ...................................................... 385

    7.1 GII THIU ............................................................................................................. 386

    7.2 QU TRNH CHUN B........................................................................................ 386

    7.3 TIN HNH ............................................................................................................. 388

    CHNG VIII MT SVN KHC ................................................................ 396

    8.1 XY DNG NG DNG CHO IOS 6 - IOS 6.1 TRN XCODE 5 ................... 397

    8.2 XY DNG NG DNG HTRNHIU VERSION IOS ............................. 403

    CU HI THNG GP ............................................................................................ 407

    PHLC ........................................................................................................................ 411

  • 5/28/2018 Tai Lieu Huong Dan code ios

    7/420

    LI MU

    Ngy nay xu hng sdng Smartphone v my tnh bng ang gia tng nhanh

    chng trn thgii ni chung v Vit Nam ni ring, trong Vit Nam hin ang ng

    thhai thgii vtc tng trng smartphone & my tnh bng vi tc tng trng

    266%. Android, iOS, Windows Phone l nhng hiu hnh chy trn Smartphone v

    my tnh bng phbin nht thgii: Android 75%, iOS 17,3%, Windows Phone 3,2%.

    Ti Vit Nam, theo nghin cu ca IDC, vo thi im qu 2/2013, iOS ang chim tl

    1.6% trn tng sthit bphn phi ti Vit Nam, ng thba sau Android v Windows

    Phone.

    Cng vi stng trng ca Smartphone v cc hiu hnh chy trn Smartphone,

    slng ng dng cho cc hiu hnh ngy cng tng, tnh cho n ht nm 2012, s

    lng ng dng iOS trn Apple App Store hn 775.000 ng dng v Google Play

    c hn 700.000 ng dng.Vi spht trin quy m ln ca ng dng, nhu cu tm hiu

    vlp trnh ng dng cho cc hiu hnh cng tng dn.

    Tuy nhin, thc tin cho thy, vic tm hiu cng nh tham gia cc lp hc vlp

    trnh ng dng iPhone Vit Nam cn nhiu hn chv kh khn.Cc lp dy lp trnh

    ng dng iPhone chmi xut hin nhiu trong thi gian gn y,do slng vn cnhn ch.

    Bn cnh ngun ti liu ting Vit cn t, vic tm hiu v sdng cng clp

    trnh cng nh tham kho ti liu ting Anh vlp trnh ng dng iPhone i hi ngi

    tm hiu phi tiu tn mt khong thi gian di cng nh c mt t hiu bit vlp trnh

    v khnng c hiu ting Anh tt. Hn na cc ti liu ting Vit do cc trung tm

    ging dy lp trnh iPhone bin son chlu hnh ni b, ngi tm hiu buc phi chi

    mt khon tin tham dlp hc mi c thc c nhng ti liu ny.

    Vi mong mun tm hiu cch xy dng ng dng iPhone c thm kin thc mi,

    gip ch cho qu trnh lm vic sau khi ra trng cng nh gim bt nhng kh khn cho

    ngi mi bt u tm hiu vlp trnh ng dng trn iPhone, nhm nghin cu thc

  • 5/28/2018 Tai Lieu Huong Dan code ios

    8/420

    hin nghin cu, xy dng mt sng dng trn iPhone da trn kin thc tm hiu c,

    t tng hp v xy dng thnh ti liu Hng dn xy dng ng dng trn iPhone. Vi

    nhng v dring cho tng i tng, ngi c sddng nm bt v hiu r cch s

    dng, chc nng ca tng i tng khc nhau. Bn cnh ti liu cn km theo hng

    dn chi tit tng bc xy dng mt vi ng dng thc tm nhm nghin cu thc hin c trong qu trnh nghin cu. Hi vng rng ni dung ca ti liu ny sgip

    ch phn no cho mi ngi khi bt u tm hiu vlp trnh iPhone, t c thtit

    kim bt thi gian cho qu trnh tm hiu.

    Mi kin ng gp xin lin lc qua [email protected]

    [email protected] mong nhn c sgp chn thnh tmi ngi ti liu

    hng dn ngy cng hon thin hn.

    Nhm nghin cu

    Nguyn Anh TipCao Thanh Vng

    mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]
  • 5/28/2018 Tai Lieu Huong Dan code ios

    9/420

    CHNG ICHUN BTRC KHI BT U XY DNG NG DNG

    Qu trnh chun btrc khi bt u lp trnh ng dng trn iPhone l qu trnh c

    bn m bn phi chun bcho tht klng. Qu trnh ny schun bcho bn cc iu

    kin cn thit c th thun li bt u tm hiu v lp trnh ng dng trn iPhone.

    Trong chng ny, bn sc gii thiu s lc vqu trnh chun b, cc cch thc

    bn c c hiu hnh Mac OS v bcng cXcode. Hai iu kin ny l iu kin

    cn thit bt u lp trnh iOS.

    Tuy nhin ni dung phn chun bhiu hnh Mac OS chc gii thiu s

    lc vi bn cc cch thc c c mt hiu hnh Mac OS n nh (cch thc ci

    t Mac OS trn thit bIntel/AMD) cho vic lp trnh chkhng i sau vo hng dncthbi iu thuc vmt lnh vc kin thc khc i hi phi o su tm hiu.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    10/420

    2

    1.1 CHUN BHIU HNH MAC OS

    Vic lp trnh ng dng cho iPhone i hi bn phi sdng bcng cdo chnh

    Apple cung cp gi l Xcode, v bcng cny chy trn nn tng ca hiu hnh Mac

    OS. Nu bn mun bt u cho vic xy dng ng dng cho iPhone th bn nn bt u

    ngay vi vic chun b cho mnh mt chic my chy h iu hnh Mac OS. Sau ychng ti sgii thiu cho bn mt scch thc bn c thshu cho mnh mt h

    iu hnh Mac OS ph hp.

    1.1.1 Lp Trnh ng Dng Iphone Trn Windows

    Nu bn mun lp trnh ng dng cho iPhone, nhng li mun thc hin trn mi

    trng Windows c th thao tc thm cc cng vic khc trn mi trng ny, la

    chn tt nht cho bn lc ny chnh l sdng mt my o chy hiu hnh Mac OS lp trnh. Tuy nhin nu bn la chn phng n ny, cu hnh my ca bn phi mnh,

    CPU xl tt, v bn nn dnh t nht 2G RAM cho my o hot ng tt hn.

    Lm cch no ti c thshu mt my o chy Mac OS cho r ing mnh?

    Bn c hai cch c thshu mt my o chy Mac OS cho mnh.

    Cch mt l bn chun bmt a ci Mac OS v phn mm htrto my o nh

    VMWare , Virtualbox sau bn tin hnh ci t bnh thng bng tay. a ci t

    Mac OS bn c thmua cc tim bn a phn mm. Hoc bn c thti vtrn mng

    mt a ci Mac OS ui .iso ( Thng th trn mng c a ci ui .dmg, bn phi

    chuyn i qua ui .isoc htrtt nht tphn mm to my o).

    Cch thhai l bn ti vmt my o hon chnh c ci t sn Mac OS, sau

    mln bng phn mm chy my o l bn c thc mt hiu hnh Mac OS.

    Bn nn truy cp vo

    Din n Tinh T:www.tinhte.vn/forums/chuyen-de-hackintosh.361/.

    Cng ng Hackinosh:www.facebook.com/groups/hackintoshvietnam/.

    http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.facebook.com/groups/hackintoshvietnam/http://www.facebook.com/groups/hackintoshvietnam/http://www.facebook.com/groups/hackintoshvietnam/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    11/420

    3

    tm hiu thm tin trnh ci t my o, cc vn xy ra trong qu trnh ci.

    Ngoi ra bn cng c thtm cc my o chy Mac OS ci t sn ti

    Soul Dev Team:http://www.souldevteam.net/.

    1.1.2 SDng Sn Phm Chnh Hng Apple

    Nu gia nh bn c iu kin, bn c thmua ngay cho mnh mt chic my Apple

    chnh hng, sdng trn vn tnh nng cng nh shtrti a tApple.

    Bn truy cp vo www.apple.com, chn Store, sau la chn Shop Mac n

    chuyn mc bn cc sn phm chy Mac OS ca Apple. Ti y bn c th la chn

    nhiu loi sn phm khc nhau nh Macbook Air, Macbook Pro, iMac, Mac mini.

    Hnh 1.1 Truy cp Store Mac OS

    Ty theo s thch v nhu cu, cng nh khnng ti chnh m bn la chn chomnh mt chic my thch hp. Bn c th thanh ton cho Apple v i hng c

    chuyn v, hoc tm n cc trung tm bn hng ca Apple gn nh mua. Hoc bn

    cng c thtruy cp vo a chwww.apple.com/asia/reseller/ tm kim cc a im

    bn hng ca Apple gn nht. Vit Nam, bn hy truy cp vo trang

    http://www.souldevteam.net/http://www.souldevteam.net/http://www.souldevteam.net/http://www.apple.com/http://www.apple.com/http://www.apple.com/asia/reseller/http://www.apple.com/asia/reseller/http://www.apple.com/asia/reseller/http://www.apple.com/asia/reseller/http://www.apple.com/http://www.souldevteam.net/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    12/420

    4

    www.icenter.com.vnc thnhanh chng tm c ca hng bn sn phm ca Apple

    gn nht ni bn sng. Vic ny gip bn c thnhanh chng c trong tay mt sn phm

    chnh hng Apple, thanh ton tin li m khng phi tn thi gian cho vic chuyn khon

    thanh ton cng nh chi vn chuyn sn phm tnc ngoi v.

    Nu mun tit kim thm chi ph bn c thtruy cp

    www.store.apple.com/us/browse/home/specialdeals/mactm mua cc gim phm

    Refurbished ca Apple vi mc gi thp hn.

    Hnh 1.2 Store Refurbished

    Nu bn mun mua my chnh hng Apple vi gi rhn na, th vic mua li sn

    phm qua sdng l mt gi ng cho bn cn nhc. i vi vic mua li my

    qua sdng bn c thvo mt strang mua bn c cht lng tm mua sn phm ph

    hp vi ti tin. Chng hn nh cc trangwww.5giay.vn,www.nhattao.com.. l cctrang vi rt nhiu schn, cc dng my a dng cng nh mc tin khc nhau, ty theo

    nhu cn v iu kin cho php m bn c thtm c mt chic my ng mnh.

    http://www.icenter.com.vn/http://www.icenter.com.vn/http://www.store.apple.com/us/browse/home/specialdeals/machttp://www.store.apple.com/us/browse/home/specialdeals/machttp://www.5giay.vn/http://www.5giay.vn/http://www.5giay.vn/http://www.nhattao.com/http://www.nhattao.com/http://www.nhattao.com/http://www.nhattao.com/http://www.5giay.vn/http://www.store.apple.com/us/browse/home/specialdeals/machttp://www.icenter.com.vn/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    13/420

    5

    Hnh 1.3 Mua li my c

    Nu bn la chn mua my c, phi la chn tht klng ti my n cu hnh, tt

    nht nn chn mua nhng my sn xut trong 1-2 nm gn nht, c bit bn phi kimtra xem my mnh mun mua c htrnhng phin bn Mac OS no. V sao phi nh

    vy ? Bi v Xcode 5 chy trn Mac OS 8 trln, nu bn chn mua my chhtrMac

    OS 7 trvtrc, th bn khng thci c Xcode 5 m chc thsdng cc phin

    bn thp hn.

    1.1.3 Chy Hiu Hnh Mac Os Trn Pc/Laptop Intel/AmdTi Sao Khng?

    Vic ci Mac OS ln chic PC hay laptop ca bn cng l mt phng php tt va c c hiu hnh Mac OS, va c thm kinh nghim trong qu trnh ci t, v

    hn na l tit kim c chi ph. C hai dng ci t hackintosh l ci t tmt bn

    c chnh sa sn nh iAtkos ( h trdng my intel ) hay Niresh (h tr thm dng

    my AMD) v ci t ta gc ca Apple (Mac OS Retail) . Dng ci t ta gc ca

    Apple i hi bn sau khi ci t phi tin hnh thm nhiu thao tc khc c thc

  • 5/28/2018 Tai Lieu Huong Dan code ios

    14/420

    6

    c mt hiu hnh Mac OS hon thin, cn i vi bn chnh sa sn th gn nh

    khng iu chnh thm nhiu.

    Hnh 1.4 iATKOS v Niresh

    Bn c hai phng n la chn nu mun chy Mac OS ln my ca mnh: tci

    th cng v thu ngi ci t. Nu bn thu ngi ci t, chi ph thng khong t

    100.000 vn n 200.000 vn ty theo yu cu ci t nh thno.

    Hnh 1.5 Tm kim Ci t Mac OS cho PC/Laptop

  • 5/28/2018 Tai Lieu Huong Dan code ios

    15/420

    7

    Vi vic thu ngi ci, bn chgn bo cu hnh my cho ngi ci t hquyt

    nh v cho bn li khuyn. Bi vic ci t Hackintosh phthuc rt nhiu vo tng

    thch phn cng ca thit bvi hiu hnh Mac OS, do khng phi my no cng c

    thci c. Tuy nhin phng n ny gip bn vt vhn, cng nh tit kim c

    thi gian hn.

    Mt phngn khc l bn tci. Vi cch la chn ny, bn phi tm hiu v

    Hackintosh, cng nh cc lu khi ci t, cc li xy ra v cch khc phc Nu bn

    la chn cch ny, bn nn tm hiu mt sdin n, hi nhm chuyn vHackintosh

    c thm kin thc, kinh nghim v strgip tcng ng. y chng ti gii thiu

    cho bn hai a chuy tn vHackintosh:

    - Chuyn Hackintosh trn Tinh Ta ch: www.tinhte.vn/forums/chuyen-

    de-hackintosh.361/

    - Group HackintoshWe Love Mac a ch:

    www.facebook.com/groups/hackintoshvietnam/

    Ti y bn stm c nhiu ti liu hng dn cng nh sgip tn tnh ca

    mi ngi, hi vng bn sc mt hiu hnh Mac OS hon chnh.

    Bn c bit:

    - Phn cng ca my tnh rt quan trng khi quyt nh ci Mac OS ln my tnh thng

    thng v khng phi phn cng no cng c thtm c Kext (C thhiu ging nh

    Driver cho thit btrn hiu hnh Windows.

    - Card VGA Intel Graphic HD 4000 v Intel Graphic HD 3000 c Mac OS htrKext

    rt tt.

    - a phn dng HP Probook htrtt Hackintosh.

    1.2 PHN MM XCODE

    Sau khi bn c c hiu hnh Mac OS, vic tip theo bn phi lm trc khi

    c thbt u lp trnh ng dng iPhone l ci bcng clp trnh Xcode do Apple cung

    http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.facebook.com/groups/hackintoshvietnam/http://www.facebook.com/groups/hackintoshvietnam/http://www.facebook.com/groups/hackintoshvietnam/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/http://www.tinhte.vn/forums/chuyen-de-hackintosh.361/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    16/420

    8

    cp cho cc nh lp trnh ng dng, cc nh lp trnh c thpht trin ng dng cho c

    iOS ln Mac OS. Vic ci t Xcode c nhiu cch, ty theo bn chn la cch no ph

    hp vi bn thn.

    1.2.1 Ci t Thng Qua Bn Ti VTTrang Dnh Cho DeveloperBn truy cp vo trangwww.developer.apple.comtin hnh ti phin bn Xcode

    mi nht ( hoc cc phin bn khc ty theo nhu cu ca bn).

    Hnh 1.6 Ti Xcode ttrang Developer

    Tip theo bn la chn View Download.

    http://www.developer.apple.com/http://www.developer.apple.com/http://www.developer.apple.com/http://www.developer.apple.com/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    17/420

    9

    Hnh 1.7 Chn View Download

    Apple syu cu bn ng nhp ti khon Developer ID tip tc.

    Hnh 1.8 ng nhp Developer ID

    Sau khi bn ng nhp bng ti khon Developer xong, thc hin theo hng dn,

    bn sti vc phn mm Xcode v tin hnh ci t trn my.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    18/420

    10

    Vi ti khon Developer ID vi gi 99$ / nm, bn slun c Apple cp nht thng tin

    cng nghmi, cng nh htr, sdng trc cc phin bn mi ca Apple nh cc bn

    preview iOS, Mac OS, Xcode

    1.2.2 Ci t Thng Qua Apple Mac Store

    y l cch phbin nht, v vic ti Xcode trn Apple Store l min ph, v chcn

    bn c mt ti khon Apple ID l c, khng yu cu phi l Developer ID.

    Bn chcn truy cp vo Apple Mac Store v tm kim Xcode, bn sthy kt qu

    l phn mm Xcode Free, cng vic by gil bn chcn Install v chi hon tt.

    Hnh 1.9 Ci t Xcode qua Apple Mac Store

  • 5/28/2018 Tai Lieu Huong Dan code ios

    19/420

    11

    Trong App Store bn cng c thtm c nhiu gio trnh, bi ging vlp trnh

    ng dng bng Xcode.

    1.2.3 Ci t TBn Xcode c Chia STrn Internet

    i vi cch ci t ny, bn ch cn truy cp internet v tm bn ci t Xcodec chia strn mng v ti vci t trn my ca bn. Tuy nhin bn smt thi gian

    tm kim trn internet tm c bn ci t va , tc ti tt nht.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    20/420

    CHNG IITM HIU XCODE V IOS SIMULATOR

    Chng ny smang n cho bn kin thc vbcng cXcode cng nh cng c

    gilp hiu hnh iOS l iOS Simulator. Qua nhng kin thc c cung cp, bn s

    nm r vgiao din, mt stnh nng, cc button v cng dng ca n trn Xcode v iOS

    Simulator. Ngoi ra, bn sc hng dn mt sthao tc c bn khi sdng Xcode,

    iOS Simulator t bn s d dng hn trong vic s dng b cng cny trong qu

    trnh lp trnh ng dng iPhone vsau.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    21/420

    13

    2.1 TM HIU XCODE 5

    2.1.1 Gii Thiu VXcode 5

    Phn mm Xcode l bcng cdo Apple cung cp cho cc lp trnh vin lp

    trnh ng dng cho cc thit bchy hiu hnh ca Apple. Phin bn mi nht hin nay

    ca Xcode l bn Xcode 5 trn trang Developer ca Apple.

    Hnh 2.1 Phin bn Xcode 5 trn trang Apple

    Giao din lm vic ca Xcode gm c 5 phn chnh : Toolbar, Editor area,

    Navigator area, Debug area, Utility area.

    - Debug area: y l vng htrbn trong qu trnh debug li ca chng

    trnh.

    - Toolbar area: vng cha cc cng ctin ch gip bn c thn gin trong

    vic chy, debug ng dng, la chn iOS Simulator, ng mcc vng khc- Editor area: vng bn thit kgiao din, vit v chnh sa code ca

    chng trnh.

    - Utility area: vng ny cho php bn ty chnh cc tham s, gi trca cc i

    tng trn giao din, cng nh cho php bn ko thv sdng cc i tng

  • 5/28/2018 Tai Lieu Huong Dan code ios

    22/420

    14

    c sn ca Xcode nh Button, Label, Slider hay cc on code mu ( If,

    Switch).

    - Navigator area: cung cp cho bn mt cch nhn trc quan, tin li cho vic

    qun l ng dng, xem thng bo li, tm kim mt on code trong chng

    trnh hay kim tra mc hot ng ca RAM, CPU khi chy ng dng

    Hnh 2.2 Giao din Xcode

    Xcode cng cung cp cho bn mt chgli thng minh htrbn trong vic

    pht hin li, cnh bo li v gi thay thkhc phc

  • 5/28/2018 Tai Lieu Huong Dan code ios

    23/420

    15

    Hnh 2.3 Chgli

    Hn thna, km theo Xcode l mt b ti liu hng dn tng bc, chi tit v

    tin li nhm htrngi dng trong vic lp trnh. Trong qu trnh vit ng dng, nu

    bn mun tm hiu thm mt i tng, bn c thsdng ti bti liu ny c c

    hng dn, v dminh ha dhiu.

    Hnh 2.4 Ti liu hng dn

  • 5/28/2018 Tai Lieu Huong Dan code ios

    24/420

    16

    Bn c thxem thm ti liu vXcode do Apple cung cp ti:

    https://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcod

    e_Overview/About_Xcode/about.html

    2.1.2 Thao Tc To ng Dng Mi

    Khi khi ng Xcode ln, giao din hin ra cho php bn to mt project mi,

    hoc mli cc project gn y.

    Hnh 2.5 Giao din Xcode khi mln

    Ti giao din Xcode, bn c thto mi mt project bng cch chn Create new

    project. Ngoi ra bn c thto project mi bng cch chn File> New> Project.

    https://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/About_Xcode/about.htmlhttps://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/About_Xcode/about.htmlhttps://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/About_Xcode/about.htmlhttps://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/About_Xcode/about.htmlhttps://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/About_Xcode/about.html
  • 5/28/2018 Tai Lieu Huong Dan code ios

    25/420

    17

    Hnh 2.6 To mi Project bng Menu

    Sau khi chn New Project, Xcode syu cu bn la chn mt hnh thc cho Project

    ny (ng dng cho iPhone hay Mac OS, Single View hay Empty View). Cch n gin

    nht l bn chn Single View.

    Hnh 2.7 Chn la mu cho project

  • 5/28/2018 Tai Lieu Huong Dan code ios

    26/420

    18

    Tip theo bn in thm mt vi thuc tnh ca Project nh Product Name,

    Organization Name, Company Identifer. Sau bn tin hnh la chn Devices cho

    Project (iPhone, iPad hay Universal vit ng dng cho chai).

    Hnh 2.8 in thng tin cho project

    Tip theo bn chn ni lu trProject trn my tnh lu Project v chn Create.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    27/420

    19

    Hnh 2.9 Chn ni lu Project

    Nh vy bn to xong mt Project mi.

    Hnh 2.10 Giao din project mi to

  • 5/28/2018 Tai Lieu Huong Dan code ios

    28/420

    20

    2.1.3 Tm Hiu Giao Din Xcode V Mt STnh Nng

    2.1.3.1 Navigator Area

    Navigator areacho php bn qun l ng dng hiu qunh qun l cc tp tin,

    th mc, qun l cc thng bo li v cnh bo, qun l vic debugC thchia

    Navigator area thnh hai phn chnh l Navigator selector barv Content area.

    Hnh 2.11 Giao din Navigator

    Trong Navigator selector bar gm mt sbutton chnh sau:

    - Project Navigator( ): dng qun l cc tp tin ca ng dng nh thm,

    xa, gom nhmCc tp tin qun l sc thhin trong Content area.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    29/420

    21

    - Find Navigator( ): sdng tm kim mt cch nhanh chng cc string

    trong ng dng, tm kim ni dung mrng.

    - Issue Navigator( ): qun l cc thng bo li, cnh bo ca ng dng.

    -

    Debug Navigator( ): theo di qu trnh debug ng dng.

    2.1.3.2 Editor Area

    Editor areacho php bn thit kgiao din, vit v sa code cho ng dng. Khi

    bn chn tp tin storyboardbn Content area th Editor area shin thgiao din

    Interface Buildercho bn thit kgiao din. Tng tvi tp tin .m v .h th Editor area

    shin thni dung code ca tp tin.

    Hnh 2.12 Giao din ng dng

  • 5/28/2018 Tai Lieu Huong Dan code ios

    30/420

    22

    Hnh 2.13 Giao din code

    Editor areacn cho php bn qun l cc i tng trong giao din mt cch chi

    tit hn. Trong phn Interface Builder, bn chn button Show Document Outline (

    ) bn gc tri mn hnh, bn s thy c mt vng qun l phn cp cc i

    tng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    31/420

    23

    Hnh 2.14 Giao din qun l chi tit

    2.1.3.3 Toolbar Area

    Toolbarcho php thc hin mt sthao tc mt cch nhanh chng thng qua cc

    Button m khng cn phi dng ti Menu. Toolbar gm mt sthnh phn sau:

    - Run button( ): dng chy thng dng.

    - Stop button( ): dng dng vic chy thng dng.

    - Scheme menu( ): dng la chn iOS Simulator

    thch hp chy ng dng.

    - Activity viewer: thng bo trng thi ca ng dng, cng nh hin cc trng

    thi li, cnh bo ca chng trnh (nu c).

    Hnh 2.15 Activity viewer

  • 5/28/2018 Tai Lieu Huong Dan code ios

    32/420

    24

    - Editor selector( ): gm cc button dng iu chnh Editor area

    (cho php chia i Editor area ra lm hai hay chl mt vng duy nht).

    - View selector( ): dng n/hin cc vng Navigator area, Utility

    area, Debug area.

    Hnh 2.16 Toolbar area

    2.1.3.4 Utility Area

    Utility areac s dng thay i cc thuc tnh ca i tng bn InterfaceBuilder, ngoi ra cn c sdng la chn v ko thcc i tng, on code mu

    vo Interface Buider v Editor.

    Utility area c chia lm 2 vng chnh l Inspectorv Library. Inspector panel

    vng cho php bn c sthay i thuc tnh ca i tng. Trn u ca Inspector pane

    l Inspector selector barbao gm cc button htrbn trong vic iu chnh thuc tnh.

    Trn u ca Libarary pane l Libaray selector bar bao gm cc button bn c th

    chn la ph hp trong vic sdng cc on code mu, cc i tng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    33/420

    25

    Hnh 2.17 Utility area

    Trong Inspector selector bar, c hai button bn cn lu l Attribute( ) v

    Quick Help( ). Quick Help cho php bn tra cu mt cch nhanh chng cc i tng,

    hm trong ti liu km theo ca Xcode. Attribute cho php bn thay i cc thuc tnh

    ca i tng.

    Trong Library selector bar, c mt sbutton quan trng l Code snippets( ),

    Objects( ). Code snippets hin thcho bn danh sch cc on code mu bn lachn sdng trong qu trnh vit ng dng. Objects hin thcc i tng ca Xcode cho

    bn sdng thit kgiao din ng dng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    34/420

    26

    2.1.4 Thit KGiao Din

    Giao din ng dng trong Xcode c thit kthng qua Interface Builder, cc i

    tng ca Interface Builder c cung cp trong Utility area. tin hnh thit kgiao

    din, bn ko thi tng trong Utility area vo Interface Builder.

    Hnh 2.18 Ko thcc i tng vo giao dinTi y bn c thiu chnh, sp xp vtr ca cc i tng theo tng thit k

    ca bn. Trong Xcode, tp tin bn dng thit kgiao din l tp tin .storyboard.

    Khi ko thcc i tng vo Interface Builder, bn sddng xc nh vtr t

    i tng sao cho giao din cn i, khng bhin tng lch khi Run ng dng. l

    nhvo tnh nng htrcanh chnh ca Xcode thng qua cc ng kt nt mu

    xanh.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    35/420

    27

    Hnh 2.19 Canh chnh vtr theo ng kxanh

    Bn c thiu chnh cc thuc tnh ca cc i tng trong Interface Builder thngqua vng Inspector pane.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    36/420

    28

    Hnh 2.20 Thay i thuc tnh ca i tng

    tm kim i tng mt cch nhanh chng, bn sdng cng ctm kim trong

    Library pane.

    Hnh 2.21 Tm kim trong Library

  • 5/28/2018 Tai Lieu Huong Dan code ios

    37/420

    29

    Hn na, nu bn mun tm hiu r hn vi tng , xem v dcthminh

    ha, bn c thsdng n bti liu htrca Xcode.

    Hnh 2.22 Xem ti liu htrca i tng

    2.1.5 Vit Code

    Phn code ca ng dng thng c vit trong hai tp tin l .hv .m. Tp tin .h

    thng c sdng kt ni v khai bo cc i tng ca Interface Builder trc khi

    mun sdng cc i tng ny lp trnh. Ngoi ra tp tin .h cn dng khai bo cc

    hm skin trc khi sdng trong tp tin .m. Tp tin .m dng trin khai cc hm skin m bn khai bo bn tp tin .h.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    38/420

    30

    Hnh 2.23 Hai tp tin sdng vit code cho ng dng

    kt ni i tng trong Interface Builder vo tp tin .h (nh x), bn nhn kt

    hp Ctrl + nhp chut vo i tngv ko thvo tp tin .h.

    Hnh 2.24 nh xi tng vo tp tin .h

  • 5/28/2018 Tai Lieu Huong Dan code ios

    39/420

    31

    Khi hp thoi hin ra, bn la chn loi kt ni cho i tng l Actionhoc

    Outlet. Hiu mt cch n gin, i tng no m bn sdng hin ththng tin ra

    bn ngoi th thuc loi Outlet. i tng no m bn mun vit code khi tng tc

    vi i tng scho ra kt qum bn mun ( v dbn mun nhn vo Button s

    hin Hello World) th bn schn loi l Action.Mt i tng c thva l Action,va l Outlet ty vo ngi vit ng dng quy nh.

    Hnh 2.25 La chn kiu nh x

    Khi bn vit code, Xcode htrbn trong vic pht hin li v thng bo cho bn

    bng hnh trn mu cha du chm than ti vtr pht hin li. Ngoi ra Xcode cng

    c chcnh bo bng tam gic mu vng cho on code m Xcode cho rng cn ci

    thin bn kp thi kim tra li v chnh sa cho hiu qu( nu cn ).

    Xcode cn htrbn mt chgi sa li trong qu trnh vit code. V dbnvit code nhng qun du ; , Xcode sgi cho bn c du ; hon tt on code

    hon chnh.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    40/420

    32

    Hnh 2.26 Gi khc phc li

    Xcode chhtrkhc phc mt sli c bn vc php, cc li lin quan khc trong qu

    trnh vit code cc bn phi tgii quyt

    Trong Library pane, Xcode htrsn cho bn mt son code mu trong th vin,

    nu bn cn xi on code no, bn chcn ko thon code tLibrary pane sang

    Editor area.

    Hnh 2.27 Mt scode mu sdng

  • 5/28/2018 Tai Lieu Huong Dan code ios

    41/420

    33

    Nu bn c mt on code, bn mun lu n li ln sau sdng th bn chcn chn

    on code v ko thvo Library pane, t tn cho on code v lu li. Nh vy

    ln sau bn mun sdng li, chvic ko thtLibrary sang l c.

    thun tin cho vic vit code nhanh chng, bn c thbt chchia i vng

    Editor area lm hai, lc ny bn c thxem cng lc ctp tin .h ln tp tin .m. Mun

    thc hin iu , trong Toolbar, bn nhp chut vo nt Assistant Editor Button( ).

    Hnh 2.28 Chia i mn hnh Editor tin lm vic

    Bn c thty chnh li font v mu chto nn mt sthay i, to thm cm

    hng mi. Bn chn Xcode> chn Preferences> chn Fonts & Colors, sau bn ty

    chn mt nh dng mnh thch.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    42/420

    34

    Hnh 2.29 Ty chnh Font & Color cho giao din lp trnh code ca Xcode

    Trong qu trnh vit chng trnh, bn cng c thsdng nt Quick Help trong

    Utility area mti liu tham kho v tra cu cc hm cng nh xem v dminh hacho cc hm.

    2.1.6 Thc Thi V Kim Tra Li Ca ng Dng

    2.1.6.1 Thc Thi ng Dng

    Khi bn mun chy thv a ng dng ln iOS Simulator, bn sdng cc button

    chuyn dng trn Toolbar. chy ng dng, trc tin bn phi chn la thit bm bn

    mun chy ng dng ln . Bn c thchn chy ln thit btht hoc trn iOS

    Simulator. Trong iOS Simulator, ty theo ng dng ca bn vit cho thit bno m la

    chn thit b, v diPad, iPhone, iPhone Rentina

  • 5/28/2018 Tai Lieu Huong Dan code ios

    43/420

    35

    Hnh 2.30 La chn thit biOS Simulator

    Sau khi chn la xong phn thit b, bn nhn Runchy chng trnh. Nu mun

    dng chng trnh, bn nhn Stop.

    Hnh 2.31 Nhn Stop dng chng trnh

  • 5/28/2018 Tai Lieu Huong Dan code ios

    44/420

    36

    2.1.6.2 Kim Tra Li Ca ng Dng

    Vng Debug area htrbn debug ng dng kim tra tng bc, ngoi ra cn c

    vng Debug Navigator cho php bn theo di cc tin trnh, cng nh vic sdng RAM,

    CPU.

    Hnh 2.32 Vng Debug Navigator

    Trong Debug area c cc nt htrnh bt tt cc Breakpoint, nhm nt htrthc

    thi ng dng tng bc htrbn debug mt cch chnh xc hn.

    Hnh 2.33 Vng Debug area

    nh du breakpoint, bn chn v tr cn nh du, v nhp chut voBreakpoint gutter tng ng vi vtr .

  • 5/28/2018 Tai Lieu Huong Dan code ios

    45/420

    37

    Hnh 2.34 nh du Breakpoint

    Ngoi ra nu bn mun thu gn 1 on code no , bn c thsdng thanh ng

    htrbn cnh thanh ng t Breakpoint.

    Hnh 2.35 Thu gn on code cho dnhn

  • 5/28/2018 Tai Lieu Huong Dan code ios

    46/420

    38

    2.2 TM HIU IOS SIMULATOR

    2.2.1 Gii Thiu iOS Simulator

    iOS Simulatorl mt phn trong bcng ckm theo ca phn mm Xcode. iOS

    Simulator cha iOS SDKcho php bn chy trn Mac OS gilp mi trng iPhone,

    iPad nhm phc vcho vic kim thng dng c vit ra trc khi kim thng dng

    trn thit btht.

    iOS Simualtorcho php bn ci t nhiu thit biOS khc nhau nh iPhone,

    iPhone Rentina, iPad, iPad Rentina.. vi nhiu phin bn iOS khc nhau nh 6.0, 6.1,

    7.0. Do bn c thddng xy dng ng dng ca mnh dnh cho phin bn iOS

    mi hoc dng cho cphin bn iOS c.

    Vi iOS Simulator, bn c thkim thng dng ca bn vthit kgiao din, v

    tnh nng ca ng dng, t c thkhc phc cc li pht sinh, ti u ha ng dng

    trc khi bn em ng dng ln thit btht.

    Bn c thc thm ti liu iOS Simulator User Guide trn iOS Developer Library tm

    hiu thm, cng nh c thm kinh nghim sdng iOS Simulator.

    Xem ti :

    https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_

    Guide/Introduction/Introduction.html

    2.2.2 Tm Hiu iOS Simulator

    ng dng iOS Simulator c thchy chung vi phn mm Xcode hoc chy c lp

    u c. Bn c thtng tc vi iOS Simulator thng qua bn phm, chut nhp d

    liu cng nh iu khin cc skin ca ngi dng.

    Phn ny sgip bn tm hiu mt sim c bn ca iOS Simulator htrbn

    tt hn trong qu trnh vit ng dng cho iOS.

    https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.htmlhttps://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.htmlhttps://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.htmlhttps://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.htmlhttps://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.html
  • 5/28/2018 Tai Lieu Huong Dan code ios

    47/420

    39

    2.2.2.1 Thao Tc C Bn Vi IOS Simulator

    Thao tc mv thot ios simulator

    miOS Simulator bn c hai cch. Mt l bn chy ng dng trong Xcode

    khi ng iOS Simulator. Vi cch ny bn chcn chn iOS Simulator ph hp ri

    chn Run.

    Hnh 2.36 Chn Run miOS Simulator

    Cch thhai l bn chn menu Xcode> chn Open Develop Tool> iOS

    Simulator. Khi y iOS Simulator sc khi ng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    48/420

    40

    Hnh 2.37 MiOS Simulator trong Menu

    Mc d l mt phn trong bcng cca Xcode, nhng iOS Simulator vn c th

    tip tc hot ng d Xcode c bng chng trnh. Do nu bn mun thot hn iOS

    Simulator, bn chn menu iOS Simulator > chn Quit iOS Simulator.

    Hnh 2.38 Trong menu chn Quit iOS Simulator

  • 5/28/2018 Tai Lieu Huong Dan code ios

    49/420

    41

    Xoay mn hnh iOS Simulator

    Trong qu trnh chy ng dng trn iOS Simulator kim th, i lc bn cn s

    dng ti chc nng xoay mn hnh c thkim tra tnh tng thch ca ng dng vi

    tng kiu mn hnh ( ngang, ng) hoc ph hp vi ng dng ca bn ( chng hn

    vit ng dng sdng mn hnh ngang). Nu l thit btht, tht ddng bn c th

    xoay mn hnh cho ph hp. Tuy nhin vi iOS Simulator, bn cn phi sdng n chc

    nng xoay mn hnh c htrsn c thxoay mn hnh theo mun.

    Bn c thvo menu Hardware> chn Rotate Leftnu bn mun xoay qua tri ;

    chn Rotate Rightnu bn mun xoay qua phi ; chn Shake Gesturenu bn mun

    rung nh.

    Hnh 2.39 Trong menu chn xoay mn hnh iOS Simulator

    n/hin keyboard

    Trong qu trnh kim thng dng, nhiu trng hp bn cn sdng n bn

    phm ca iOS, hoc sau khi nhp liu xong trong TextField nhng ng dng ca bn cha

    c chc nng n bn phm i, lc bn cn sdng n tnh nng Keyboard ca iOS

    Simulator n/hin bn phm. Bn c thvo menu Hardware> chn Simulate

    Hardware Keyboard.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    50/420

    42

    Hnh 2.40 n/Hin keyboard trong iOS Simulator

    Ci t v gbng dng trn iOS Simulator

    ng dng trong iOS Simulator c ci t thng qua Xcode. Khi bn chy ng

    dng bng Xcode th Xcode sci t ng dng vo iOS Simulator. Cch thc gb

    ng dng cng ging nh trn thit biOS tht. Bn chcn nhp v gichut ( hoc

    trackpad ) trn biu tng ca ng dng cho n khi xut hin biu tng du x, bn chcn nhp vo du x gbng dng. Sau khi hon tt chcn n Home trli ban

    u.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    51/420

    43

    Hnh 2.41 Gng dng trong iOS Simulator

    Bsung thm cc phin bn ios v cc thit bios

    iOS Simulator cho php bn c thchy ng dng trn nhiu loi thit bnh

    iPhone, iPhone Rentina, iPad, iPad Rentina. ng thi, iOS Simulator cng cho php bn

    sdng nhiu phin bn khc nhau ca iOS nh iOS 6.0, iOS 6.1, iOS 7.0.

    Mc nh sau khi ci Xcode 5, iOS Simulator km theo c ci t htrcc

    thit biPhone Rentina, iPad Rentina v iOS 7.0. Nu bn mun iOS Simulator chy cc

    thit biPhone, iPad thng thng v cc phin bn iOS thp hn nh iOS 6.0, iOS 6.1

    th bn cn phi ti v ci t thm. Bn vo Xcode> chn Preferences> chn mc

    Download. Ti y bn la chn phin bn iOS cn ci t thm v ti v.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    52/420

    44

    Hnh 2.42 Ti thm cc iOS Simulator phin bn c hoc ti liu

    Chp nh mn hnh iOS Simulator

    Nu bn mun chp nh mn hnh ca iOS Simulator, bn c thlu li nh chp

    mn hnh ca iOS Simulator ln mn hnh ca Mac OS. lm vic , bn chn File>chn Save Screen Shot, khi nh chp mn hnh sc lu trn mn hnh Mac OS.

    Hnh 2.43 Chp nh mn hnh iOS Simulator

  • 5/28/2018 Tai Lieu Huong Dan code ios

    53/420

    45

    Copy - Paste trong iOS Simulator

    Trong iOS Simulator cng htrbn Copy v Paste mt chui.

    Copy mt chui, bn nhp chut vo chuihin thra nt Selectv Select

    All.Chn Select nu bn mun la chn mt tno , hoc Select All nu mun chntt c.

    Hnh 2.44 Chn Select hoc Select All

    Di chuyn im u v im cui nh du li chui cn chn > chn Copy

  • 5/28/2018 Tai Lieu Huong Dan code ios

    54/420

    46

    Hnh 2.45 La chn chui cn copy v chn Copy

    Paste mt chui vo iOS Simulator, trc tin bn chn Edit> Pastechuyn

    chui c copy tMac vo iOS Simulator.

    Hnh 2.46 Paste tMac OS vo iOS Simulator

  • 5/28/2018 Tai Lieu Huong Dan code ios

    55/420

    47

    Sau chn vtr mun Pastechui trong iOS Simulator > Double-clickvo vtr

    hin ra nt Paste > chn Paste.

    Hnh 2.47 Chn Paste

    2.2.2.2 Mt SHn ChCa iOS Simulator

    Mc d iOS Simulator rt hu ch cho bn kim thng dng trc khi a ln thit

    btht, tuy nhin bn thn iOS Simulator vn cn mt shn chnht nh. i vi phn

    cng, iOS Simulator vn cn khim khuyt mt sim nh khng c camera, khng

    c microphone Ngoi ra cn mt sframework khng c htrnh Media

    player, Messenger UI Nu nh cc phin bn trc ca Xcode, iOS Simulator cn

    htrc vi cc phin bn ca iOS thp hn nh iOS th trong phin bn ny, iOS

    Simulator chhtrtphin bn iOS 6.0 trln.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    56/420

    CHNG IIINGN NGOBJECTIVE-C

    Mc d Xcode htrnhiu ngn ngtrong vic lp trnh ng dng trong iPhone, nhng

    ng vai tr chyu nht vn l ngn ngObjective-C bi sthn thin, dsdng ca

    n. Chng ny shng dn bn mt snt c bn ca ngn nglp trnh Objective-C

    vi hi vng bn snm c s lc cch sdng, c php ca ngn ngny thun

    tin hn trong vic xy dng ng dng. Ni dung chng strnh by s lc mt svn

    sau ca ngn ngObjective-C:

    Khai bo bin

    Kiu dliu

    Cc php ton

    Hm (Function)

    Cu trc iu kin

    Cu trc lp

    Mng

    Chui

  • 5/28/2018 Tai Lieu Huong Dan code ios

    57/420

    49

    3.1 GII THIU NGN NGOBJECTIVED-C

    Ngn ngObjective-C c to ra bi Brad Cox v Tom Love vo nm 1980 ti

    cng ty Stepstone. Tnm 1988, cng ty NeXT Sofware nm gibn quyn ca ngn

    ngObjective-C. H pht trin cc bth vin v cmi trng pht trin cho n c

    tn l NEXTSTEP.

    n cui thng 12 nm 1996, hng Apple mua li cng ty NeXT Software, mi

    trng NEXTSTEP/OPENSTEP trthnh phn ct li ca hiu hnh OS X m

    Apple gii thiu sau ny. Phin bn chnh thc ca mi trng pht trin ny do Apple

    gii thiu ban u c tn l Cocoa.

    Bng vic htrsn ngn ngObjective-C, ng thi tch hp mt scng cpht

    trin khc nh Project Builder (y l tin thn ca Xcode) v Interface Builder, Apple

    to ra mt mi trng mnh mpht trin ng dng trn Mac OS X. n nm 2007,

    Apple tung ra bn nng cp cho ngn ngObjective-C v gi l Objective-C 2.0.

    Ngn nglp trnh Objective-C da trn nn tng ngn ngC nhng bsung thm

    htrlp trnh hng i tng. Objective-C l ngn nglp trnh sdng vit ng

    dng cho Apples iOS v hiu hnh Mac OS.

    3.2 KHAI BO BIN - CCH SDNG

    3.2.1 Bin

    Bin c sdng lu trcc gi trca ng dng. Bin gm c: kiu dliu,

    tn bin v gi trca bin. C php:

    Kiu_d_liu tn_bin ;

    hoc

    Kiu_d_liu tn_bin = gi_tr_ca_bin;

    Trong =: lnh gn gi trcho bin

    VD: int x ; hoc int x = 10;

  • 5/28/2018 Tai Lieu Huong Dan code ios

    58/420

    50

    3.2.2 Quy Tc t Tn

    Quy tc t tn bin:

    - Ngn ngObjective-C c phn bit hoa thng.

    - Tn bin khng c du ting vit.

    - Tn bin khng c khong trng.

    - Tn bin khng c bt u bng s.

    - Tn bin khng c c cc k tc bit (ngoi trdu gch di _)

    - Tn bin khng c t trng vi cc tkho ca ngn ngobjective-C. VD:

    void, if, static, ...

    3.3 KIU DLIU

    Kiu dliu sgip trnh bin dch xc nh c loi dliu (snguyn, sthc,

    chui,) m chng ta mun lu trl g t scp pht lng bnhtng ng vi

    loi dliu m chng ta cn lu tr. Objective-C htrcc kiu dliu c bn nh sau:

    Loi dliu Tn kiu S nh Min gi tr

    K t char 1 byte -128 .. 127

    unsigned char 1 byte 0 .. 255

    Snguyn int 4 bytes - 2147483648 .. 2147483647

    unsigned int 4 bytes 0 .. 4294967295

    short 2 bytes -32768 .. 32767

    unsigned short 2 bytes 0 .. 65535

    long 4 bytes -2147483648 .. 2147483647

    unsigned long 4 bytes 0 .. 4294967295

    long long 8 bytes -9,223,372,036,854,775,808 ..

  • 5/28/2018 Tai Lieu Huong Dan code ios

    59/420

    51

    9,223,372,036,854,775,807

    unsigned long long 8 bytes 0 .. 18,446,744,073,709,551,615

    Sthc float 4 bytes 0 .. 3.4028235e+38

    double 8 bytes 0 .. 1.7976931E+308

    Long double 16 bytes 0 .. 1.1897315E+509

    Logic BOOL 1 bytes 0, 1; True, False; Yes, No

    Bng 3.1 Kiu dliu trong Objectived-C

    3.4 PHP TON

    Php ton K hiu V d

    Cng + A + B

    Tr - AB

    Nhn * A * B

    Chia / A / B

    Ly phn d % M % N

    Bng 3.2 Cc php ton trong Objectived-C

    Lu : php ly phn d chc dng trn 2 ton hng kiu snguyn (nu khng

    ssinh li c php)

    V d: 9 % 5 = 4

    3.5 CH THCH CODE

    Ch thch mt dng code

  • 5/28/2018 Tai Lieu Huong Dan code ios

    60/420

    52

    //ghi ch chtrn 1 dng

    Ch thch mt on code

    /*

    Ghi ch trn 1

    hay nhiu dng

    */

    3.6 XUT DLIU RA MN HNH

    Hm NSLog l hm c bit ca hthng, hm ny c thit kdng cho vic

    hin thcc thng bo li.

    C php:

    NSLog(Ni dung in [ , cc_biu_thc]);

    Ni dung in V d

    Cc k tcn in LacHong University

    Cc k tc bit bt u bi du \ \n : xung dng;

    \t : k tTab;

    \\ : k t\

    \; : k t;

    \ : du

    Cc m nh dng gi trca biu thc %m_kiu_d_liu

    (kiu float l f; kiu int l d hay i)

    Bng 3.3 V dcc kiu xut dliu ra mn hnh

    VD: Dng hm NSLog hin thchui LacHong University

  • 5/28/2018 Tai Lieu Huong Dan code ios

    61/420

    53

    Hnh 3.1 Code sdng hm NSLog()

    Kt quhin th:

    Hnh 3.2 Kt quin ra mn hnh

    Ghi ch: @: bn trong cp nhy i l chui cn lu log kim tra.

    Hnh 3.3 Dng NSLog() xut ra mn hnh mt s.

    Kt quhin th:

    Hnh 3.4 Kt quxut ra chv s

  • 5/28/2018 Tai Lieu Huong Dan code ios

    62/420

    54

    3.7 FUNCTION

    3.7.1 nh Ngha

    Function L tp hp cc dng code, gom thnh 1 khi. Khi code ny c t tn.+

    Khi code ny chc thc thi khi tn khi code c gi.

    3.7.2 Phng Thc Khng C Tham STruyn Vo

    Khai bo:

    - (kiu_hm) tn_hm

    {

    //cc cu lnh

    [return [biu_thc];]

    }

    Trong :

    - Du - i din cho loi phng thc m ta phi gi n thng qua i tng

    ca lp cha ng phng thc .

    - Kiu hm: l kiu ca trong lnh return.

    - Tn hm: do chng ta tngh ra

    VD:

    Hnh 3.5 Hm HelloWorld

    Gi hm:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    63/420

    55

    Hnh 3.6 Xut ra mn hnh HelloWorld

    Trong self l lp hin ti c cha phng thc helloWorld.

    3.7.3 Phng Thc C 1 Tham STruyn Vo

    Khai bo:

    - (kiu_hm) tn_hm : (kiu_d_liu)tn_tham_s

    {

    //cc cu lnh

    [return [biu_thc];]

    }

    VD:

    Hnh 3.7 Hm HelloWorld vi tham struyn vo

    Gi hm:

    Hnh 3.8 Gi hm HelloWorld

    3.7.4 Phng Thc C Nhiu Tham STruyn Vo

    Khai bo:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    64/420

    56

    - (kiu_hm) tn_hm : (kiu_d_liu)tham_s_1 [m_t]: (kiu_d_liu)tham_s_2

    {

    //cc cu lnh

    [return [biu_thc];]

    }

    Trong

    - du hai chm : c dng ngn cch gia cc tham_s.

    - [m_t]: c thc hoc khng, dng m tcho tn tham s.

    VD:

    Hnh 3.9 Hm cng hai s

    Trong

    - a: l tham sth1.

    - b: l tham sth2.

    Gi hm:

    Hnh 3.10 In kt quhm cng

    Trong 1 v 2 l cc i sc truyn vo hm congHaiSo.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    65/420

    57

    3.8 CU TRC IU KIN

    3.8.1 Cu Lnh If

    C php

    if ( iu_kin )

    {

    //Cng vic 1

    }

    Lu : iu kin l mt cu hi m cu trli l YES hoc NO, Cng vic 1 s

    c thc hin nu iu kin l YES.

    V d:

    - if (a > b) a c ln hn b khng?

    - if (a >= b) a c ln hn hoc bng b khng?

    - if (a < b) a c nhhn b khng?

    - if (a

  • 5/28/2018 Tai Lieu Huong Dan code ios

    66/420

    58

    //Cng vic 2

    }

    3.8.3 Cu Lnh Switch - Case

    C php

    switch ( biu_thc)

    {

    case hng_1: [cng_vic_1]

    case hng_2: [cng_vic_2]

    ...

    case hng_n: [cng_vic_n]

    default: [cng_vic_n+1]

    }

    Trong

    - Biu thc v hng kiu snguyn

    - Lnh break thot khi switch

    VD:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    67/420

    59

    Hnh 3.11 Cu trc Switch

    3.9 Cu Trc Lp

    3.9.1 Vng Lp For

    C php

    for (biu_thc1; biu_thc2; biu_thc3)

    {

    //Cng vic}

    VD:

    Hnh 3.12 Vng lp For

    3.9.2 Vng Lp While

    C php:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    68/420

    60

    while (iu_kin_lp)

    {

    //Cng vic

    }

    Trong :

    - Khi cn ng th cn thc hin . Vng lp kt

    thc khi sai.

    VD:

    Hnh 3.13 Vng lp While

    3.9.3 Vng Lp Do-While

    C php:

    do {

    //Cng vic lp

    } while(iu_kin_lp)

    Trong :

    - Thc hin cng vic t nht 1 ln, v lp li cng vic khi l

    ng.

    VD:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    69/420

    61

    Hnh 3.14 Vng lp Do - While

    3.10 MNG

    3.10.1 nh Ngha

    Mng l 1 tp hp nhiu bin nhc cng kiu, gi l kiu phn tca mng, c

    cp pht nhng vtr lin tc trong bnh.

    Mi phn t(bin nh) trong mng c xc nh da trn tn mng v cc chs

    xc nh vtr ca phn ttrong mng.

    Chsphn tca mng l cc snguyn khng m.

    3.10.2 Mng Nsarray

    Sdng i tng NSArray khi to mng.

    C php:

    NSArray *tn_mng;

    VD:

    NSArray*mangTen;

    khi to gi trcho cc phn ttrong mng ta sdng hm

    VD:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    70/420

    62

    Hnh 3.15 Sdng NSArray

    Trong

    - hm : m sphn ttrong mng.

    - alloc: cp pht vng nhcho mng mangTen.

    - %@: M kiu dliu i vi kiu chui NSString trong Objective-C.

    -

    objectAtIndex: ly ra phn tvtr index.

    Kt qu

    Hnh 3.16 Kt qusdng NSArray

    3.11 CHUII TNG NSSTRING

    3.11.1 Khi To Chui

    i vi chui trong Objective-C phi bt u bng @

    Hnh 3.17 Khi to chui

    kim tra gi trca chui ta dung hm NSLog

  • 5/28/2018 Tai Lieu Huong Dan code ios

    71/420

    63

    Hnh 3.18 Kim tra gi trchui

    m slng k t(chiu di ca chui)

    Hnh 3.19 m slng k t

    3.11.2 i Tng NSString

    To i tng c kiu l NSString c thsdng cc thao tc lien quan n

    chui do Class NSString cung cp (ghp chui, ct chui)

    Hnh 3.20 i tng NSString

    3.11.3 Tm Kim Bn Trong ChuiDng hm rangeOfString tm chui str1 c xut hin trong chui str2 khng.

    Hnh 3.21 Tm kim bn trong chui

  • 5/28/2018 Tai Lieu Huong Dan code ios

    72/420

    64

    Kt qu

    Hnh 3.22 Kt qutm kim

    3.11.4 Tm Chui V Thay N Thnh Chui Khc

    Dng hm replaceCharactersInRange thay i chui thnh chui khc.

    Hnh 3.23 Thay i k ttrong chui

    Kt qu:

    Hnh 3.24 Kt quthay i k t

    3.11.5 Xo Ni Dung Bn Trong Chui

    Dng hm deleteCharactersInRange xa mt ni dung bn trong chui.

    Hnh 3.25 Xa ni dung trong mt chui

    Kt qu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    73/420

    65

    Hnh 3.26 Kt qusau khi xa ni dung

    3.11.6 Ct ChuiCt chui c gii hn slng k t, ly tk tthn.

    Hnh 3.27 Ct chui tvtr n

    Kt qu

    Hnh 3.28 Kt quct chui tvtr n

    Ly tt ck tcn li, tnh tk tthn.

    Hnh 3.29 Ly cc k tcn li tvtr n

    Kt qu

    Hnh 3.30 Kt quly cc k tcn li tvtr n

  • 5/28/2018 Tai Lieu Huong Dan code ios

    74/420

    66

    Tch chui thnh cc phn nh

    Hnh 3.31 Tch chui thnh cc phn nh

    Kt qu

    Hnh 3.32 Kt qutch chui

    3.11.7 Chn K TVo Trong Chui

    Dng hm insertString chn k thoc mt chui vo chui.

    Hnh 3.33 Chn k tvo chui

    Kt qu

    Hnh 3.34 Kt quchn k tvo chui

    3.11.8 Chn K TVo Cui Chui

    Dng hm appendString chn k tvo cui chui.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    75/420

    67

    Hnh 3.35 Chn k tvo cui chui

    Kt qu

    Hnh 3.36 Kt quchn k tvo cui chui

    3.11.8 So Snh Chui

    Dng hm isEqualToString so snh hai chui.

    Hnh 3.37 So snh hai chui

    Kt qu

    Hnh 3.38 Kt quso snh hai chui

    3.11.9 So Snh Chui Vi K Tu V Cui Chui

    Dng hm hasPrefix v hasSuffix so snh vi k tu chui, k tcui chui.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    76/420

    68

    Hnh 3.39 So snh vi k tu, k tcui

    Kt qu

    Hnh 3.40 Kt quso snh vi k tu chui, k tcui chui

    3.11.10 Chuyn i Hnh Dng Ca Ch

    Vit hoa chu.

    Hnh 3.41 Vit hoa k tu

    Kt qu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    77/420

    69

    Hnh 3.42 Kt quvit hoa k tu

    Tt cvit thng.

    Hnh 3.43 Vit thng tt ck t

    Kt qu

    Hnh 3.44 Kt quvit thng cc k t

    Tt cvit hoa.

    Hnh 3.45 Vit hoa tt ck t

    Kt qu

    Hnh 3.46 Kt quvit hoa cc k t

  • 5/28/2018 Tai Lieu Huong Dan code ios

    78/420

    70

    3.11.11 Chuyn Chui Thnh Dng S

    Chuyn thnh snguyn

    Hnh 3.47 Chuyn thnh snguyn

    Kt qu

    Hnh 3.48 Kt quchuyn thnh snguyn

    Chuyn thnh NSInteger

    Hnh 3.49 Chuyn thnh NSInteger

    Kt qu

    Hnh 3.50 Kt quchuyn thnh NSInteger

    Chuyn thnh float

  • 5/28/2018 Tai Lieu Huong Dan code ios

    79/420

    71

    Hnh 3.51 Chuyn thnh float

    Kt qu

    Hnh 3.52 Kt quchuyn thnh float

    Chuyn thnh sdouble

    Hnh 3.53 Chuyn thnh double

    Kt qu

    Hnh 3.54 Kt quchuyn thnh double

  • 5/28/2018 Tai Lieu Huong Dan code ios

    80/420

    CHNG IVMT STHAO TC C BN

    Trc khi bt u lp trnh ng dng trn iPhone, ngoi vic bn tm hiu v

    Xcode v iOS Simulator, bn cn phi tm hiu thm mt s thao tc c bn trong lp

    trnh iOS. Hiu bit vcc thao tc c bn ny sbtrcho bn trong qu trnh tm hiu,

    cng nh l bi hc v lng trc khi i su vo tm hiu cc i tng c bn trong

    Xcode chng sau. Ni dung chng ny gm mt sthao tc c bn nh:

    Thay i icon ca ng dng

    Thay i mn hnh khi ng dng va c mln

    Thay i tn ng dng khi tn c qu di

    Ty chnh background Thm mi mt framework

    n thanh trng thi status bar

  • 5/28/2018 Tai Lieu Huong Dan code ios

    81/420

    73

    4.1 APP ICONLOADING SCREEN

    Phn ny shng dn bn cch hin thcng nh to icon, background image,

    loading screen cho ng dng ca bn. App icon, background image, loading screen cho

    ng dng ca bn cn da theo kch thc quy nh ca Apple v nn nh dng PNG.

    Bn c ththam kho thm kch thc chun y

    https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconM

    atrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1.

    4.1.1 App Icon

    App icon l biu tng ca ng dng shin thra mn hnh iPhone sau khi ng

    dng c ci t, ng thi icon ca ng dng cng hin thln App Store khi bn em

    ng dng ca mnh ln App Store. C hai loi icon l icon dnh cho ng dng trn iPhonev icon dnh cho ng dng trn App Store. App icon cho iPhone Rentina l 120x120,

    App icon cho App Store l 1024x1024.

    Hnh 4.1 Icon

    Sau khi chun bc hnh nh vi kch thc ph hp, trong phn thng tin ca

    Project, bn ko xung phn App iconv ko cc icon chun bsn vo ng vtr ca

    icon.

    https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1
  • 5/28/2018 Tai Lieu Huong Dan code ios

    82/420

    74

    Hnh 4.2 Ko thicon vo vtr

    Bn tin hnh chy thng dng trn iOS Simulator sthy icon ca ng dng.

    Hnh 4.3 Icon trn iOS simulator

  • 5/28/2018 Tai Lieu Huong Dan code ios

    83/420

    75

    4.1.2 Loading Screen

    Loading Screen l hnh nh m khi chy ng dng ln bn sthy n, ty theo tc

    ca ng dng m thi gian hin thLoading Screen nhanh hoc chm khc nhau.

    chun bcho Loading Screen bn cn chun btrc hnh nh dng PNG, kch thc

    640x1136 (iPhone 5 trln), 640x960 (iPhone 4).

    Hnh 4.4 Chun bBackground

    Sau khi chun bxong hnh nh, trong phn Lauch Image, bn ko thhnh nh vo

    Xcode cho ng vtr.

    Hnh 4.5 Ko thbackground image vo Lauch Image

  • 5/28/2018 Tai Lieu Huong Dan code ios

    84/420

    76

    4.2 THAY I APP NAME

    App Name l tn ca ng dng hin thbn di App icon trn mn hnh iPhone.

    Nhiu trng hp v tn ng dng qu di nn khng thhin thht trn mn hnh

    iPhone, do bn cn phi i tn ng dng li cho ph hp, ngn gn c thhin

    c tn ng dng bn di icon, nh vy ng dng sc tnh thm mhn. khcphc trng hp ny, bn cn phi thay i li App Name. Bn truy cp tp tin .plist v

    sa i Bundle Display Name thnh tn mi ca ng dng.

    Hnh 4.6 Truy cp tp tin .plist

  • 5/28/2018 Tai Lieu Huong Dan code ios

    85/420

    77

    Hnh 4.7 Sa i Bundle display name

    Sau khi hon tt, bn chy ng dng trn iOS Simulator xem kt qu.

    Hnh 4.8 Thay i tn trn iOS Simulator

  • 5/28/2018 Tai Lieu Huong Dan code ios

    86/420

    78

    4.3 N STATUS BAR

    Vic n status bar cho php bn chy ng dng ca mnh ton mn hnh m khng

    phi thu nhmt phn giao din dnh chcho status bar. Trc tin bn chn tp tin

    .plist trong project, sau bn thm mt dng mi.

    Hnh 4.9 Thm dng mi

    Trong danh sch la chn ca dng mi thm vo, bn la chn Status bar is

    initially hidden v trvgi trl yes.

    Hnh 4.10 Chn gi trYes

  • 5/28/2018 Tai Lieu Huong Dan code ios

    87/420

    79

    Chy ng dng trn iOS Simulator xem kt qu.

    Hnh 4.11 Thanh trng thi Status bar mt

    4.4 BACKGROUND

    4.4.1 Background Image

    Hng dn ny shng dn bn to v sdng mt hnh nh lm hnh nn cho

    ng dng ca bn. Trc tin bn cn phi chun bmt tm nh lm hnh nn. Kch

    thc ca tm nh ny ging nh hnh nh trong Loading Screen: nh dng PNG, kch

    thc 640x1136 (iPhone 5 trln), 640x960 (iPhone 4).

  • 5/28/2018 Tai Lieu Huong Dan code ios

    88/420

    80

    Hnh 4.12 Background Image

    Sau khi chun bxong hnh nh lm background cho ng dng, bn chp hnhnh vo trong project.

    Hnh 4.13 Chp hnh nh vo Project

  • 5/28/2018 Tai Lieu Huong Dan code ios

    89/420

    81

    Tip theo bn tUtility area, bn ko thi tng UIImage View vo Interface

    Builder, iu chnh kch thc UIImage View cho va vi mn hnh.

    Hnh 4.14 Ko thUIImage View vo Project

    Trong Inspector selector pane> Attributes inspector, bn tm n mc ImageView > chn Image > la chn hnh nh bn mun lm background.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    90/420

    82

    Hnh 4.15 La chn hnh nh lm background

    Kt qu.

    Hnh 4.16 Thay i background bng image

  • 5/28/2018 Tai Lieu Huong Dan code ios

    91/420

    83

    4.4.2 Background Color

    Ngoi vic sdng hnh nh lm background cho ng dng, nu bn yu thch s

    n gin, bn c thto background bng cch dng mt mu m bn a thch. Trong

    Inspector selector pane, bn chn Attributes inspector, tm n phn Background.

    Hnh 4.17 Attributes inspector

    Ti y bn cho hin ra bng mu chn la vi nhiu mu khc nhau, hy la

    chn cho mnh mt mu ph hp, nu mun nhiu mu hn c thchn Other.

    Hnh 4.18 Chn mu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    92/420

    84

    Sau khi chn xong mu th background si mu vi mu bn la chn.

    Hnh 4.19 Background thay i

    4.5 THM FRAMEWORK

    Mc d Xcode htrnhiu Framework htrcho cc nh pht trin ng dng, tuynhin chmt sframework c bn c thm vo khi to project, cc framework cn li

    th khi vit ng dng, bn phi tthm vo c thsdng framework . tin hnh

    thm mt framework, trong giao din Generalca Project, bn ko xung ti mc Link

    Frameworks and Libraries.

    Hnh 4.20 Link Frameworks and Libraries

  • 5/28/2018 Tai Lieu Huong Dan code ios

    93/420

    85

    Bn nhp chut vo biu tng du cng mra bng danh mc cc framework

    m Xcode htr.

    Hnh 4.21 Chn Framework

    Sau bn la chn framework m bn mun thm vo project ri nhn Add.

    Hnh 4.22 chn Add

  • 5/28/2018 Tai Lieu Huong Dan code ios

    94/420

    CHNG VMT SI TNG C BN

    Chng ny trnh by mt si tng c bn thng c sdng vit ng

    dng cho iOS. Qua chng ny, bn c thnm c chc nng cng nh cch sdng

    mt s i tng c bn, t c th vn dng vo vit ng dng. Do kh nng ca

    ngi vit cn gii hn nn si tng c gii thiu trong chng ny vn cn hn

    ch. Bn c th tm hiu thm nhiu i tng khc, tm hiu su hn tng i tng

    bng cch truy cp vo hng dn ca Apple cho ngi lp trnh a chsau:

    https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKit

    UICatalog/index.html

    https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.htmlhttps://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.htmlhttps://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.htmlhttps://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.htmlhttps://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.html
  • 5/28/2018 Tai Lieu Huong Dan code ios

    95/420

    87

    5.1 I TNG LABELBUTTONTEXT FIELD

    5.1.1 Gii Thiu

    5.1.1.1 i Tng Label

    Label dng hin thmt ni dung l ch/cu/on vn c tnh cnh t thay i.

    Hnh 5.1 Label

    Label cho php ngi dng thay i mt sthuc tnh hin thni dung ra giao

    din cho ph hp nh ty chnh mu ch, font v kch thc, canh tri/gia/phi hay cho

    ni dung ca label xung dng.

    Hnh 5.2 Thuc tnh ca Label

  • 5/28/2018 Tai Lieu Huong Dan code ios

    96/420

    88

    5.1.1.2 i Tng Button

    Button c thc thit khin thchhoc hin ththeo hnh nh, thng c s

    dng ngi dng tng tc vi ng dng nhm to ra mt skin no ca ng

    dng. Chng hn bn nhp tn ca bn vo text field, bn mun khi ngi dng chm vo

    button shin tn bn ra mn hnh.Lc ny button sc thit knm bt skin khingi dng chm vo, v thc hin chc nng hin thtn bn ra mn hnh.

    Hnh 5.3 Button

    Vi button, bn c thla chn mt snh dng button c sn, hoc ty chn mt

    dng button khc theo bn. Khng nhng thbn cn c thty chnh font ch, mu

    ch, mu nn ca button hoc thay thbutton theo mhnh nh button c thit k

    trc.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    97/420

    89

    Hnh 5.4 Thuc tnh ca Button

    5.1.1.3 i Tng Text Field

    i tng Text field thng c sdng ngi dng nhp dliu u vo cho

    ng dng. Chng hn nh bn vit chng trnh tnh tng hai s, th bn sdng Textfield ngi dng nhp vo hai scn tnh tng, v bn ssdng gi trnhp vo ca

    Text field tnh ton v hin thkt qucho ngi dng.

    Hnh 5.5 Text Field

    Text field cho php ty chnh canh ltri/gia/phi, ty chnh font chv kch

    thc chtrong Text field. Hn na, bn c thty chnh hnh dng ca Text field, cng

    nh nh dng ni dung gi cho ngi dng (placeholder).

  • 5/28/2018 Tai Lieu Huong Dan code ios

    98/420

    90

    Hnh 5.6 Thuc tnh ca Text Field

    5.1.2 V D

    Trong phn v dny shng dn cc bn vit mt ng dng nhhin thtn

    ca bn ra mn hnh. ng dng sc mt label, mt button, mt text field. Bn snhp

    tn bn vo text field, sau chm vo button, label shin thni dung m bn nhp

    vo text field trc .

    - To ng dng c tn l Label-Button-TextField.

    - Thit kgiao din cho ng dng gm mt lable, mt button, mt text field.

    - nh xcc i tng vo tp tin .h.

    - Vit code cho skin khi ngi dng chm vo button.

    Bc 1: To project mi.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    99/420

    91

    Hnh 5.7 To New Project

    Hnh 5.8 Chn ni lu project

  • 5/28/2018 Tai Lieu Huong Dan code ios

    100/420

    92

    Bc 2: thit kgiao din

    Hnh 5.9 thit kgiao din

    Bc 3: nh xi tng.

    Hnh 5.10 nh xi tng

  • 5/28/2018 Tai Lieu Huong Dan code ios

    101/420

    93

    Hnh 5.11 nh xi tng (tt)

    Bc 4: vit code cho button.

    Hnh 5.12 vit code cho button

    Bc 5: chy th

  • 5/28/2018 Tai Lieu Huong Dan code ios

    102/420

    94

    Hnh 5.13 chy thng dng

    5.2 KT NI C SDLIU VI SQLITE

    5.2.1 Gii Thiu

    SQLite l mt hqun trc sdliu c thchy hon ton c lp m khng cn

    n server. SQLite thng c ngi lp trnh sdng lu trc sdliu khi vit

    ng dng cho cc thit bca Apple. Cc lnh truy vn trn SQLite sdng cc lnh truy

    vn ca SQL (v dSELECT, UPDATE, CREATE). Vic qun l SQLite rt n gin,

    bn chcn qun l thng qua mt plugin ca FireFox l SQLite Manager.Bn c thtm

    hiu thm tihttp://www.sqlite.org.

    5.2.2 Ci t Sqlite Manager Cho Firefox

    ci t plugin qun l SQLite cho Firefox, bn vo phn Addon ca trnh duyt

    Firefox v tm plugin SQLite Manager ri Add to Firefox.

    http://www.sqlite.org/http://www.sqlite.org/http://www.sqlite.org/http://www.sqlite.org/
  • 5/28/2018 Tai Lieu Huong Dan code ios

    103/420

    95

    Hnh 5.14 Addon SQLite

    Sau khi ci t xong, trong phn Tool bn sthy nh hnh.

    Hnh 5.15 SQLite Manager trong Tool

    5.2.3 Cu Hnh ng Dng Tng Tc Vi Sqlite

    ng dng c ththao tc vi c sdliu ca SQLite, bn cn bsung thm th

    vin htrvo project. Trong phn Build Phase, mc Link to Library, bn thm vo th

    vin libsqlite3.dylib vo project.

    Hnh 5.16 Thm framework htrSQLite

  • 5/28/2018 Tai Lieu Huong Dan code ios

    104/420

    96

    5.2.4 Cc Hm Trong Sqlite

    Trong SQLite c mt shm c bn cho php bn tng tc ddng vi c sd

    liu.

    - sqlite3_open(): mmt kt ni n tp tin sqlite. Nu tp tin ny chac, h

    thng stng to ra.

    - sqlite3_close(): ng kt ni n sqlite.

    - sqlite3_prepare_v2(): khi to cu lnh truy vn SQL thc thi.

    - sqlite3_step(): thc thi lnh truy vn c to bi hm sqlite3_prepare_v2().

    - sqlite3_column_(): trvkt qudliu tcu truy vn SQL, vi kiu

    dliu c khai bo trong (thng l text, bytes, int, int16).

    - sqlite3_finallize(): xo cu lnh truy vn SQL c khi to bi hm

    sqlite3_prepare_v2() trong bnh.

    Bn c ththam kho thm mt shm khc ti:www.sqlite.org/c3ref/funclist.html

    5.2.4.1 Khi To i Tng Sqlite

    Trc khi tng tc vi c sdliu SQLite, bn cn phi to i tng dng ny

    bng cch khai bo mt bin c kiu sqlite3 trong tp tin .h.

    Hnh 5.17 Khai bo sqlite3

    5.2.4.2 Kt Ni Hoc To Database

    Dng hm sqlite3_open() mkt ni n c sdliu sqlite.

    Hnh 5.18 Hm sqlite3_open

    Nu tp tin ny cha c th stng c to.

    http://www.sqlite.org/c3ref/funclist.htmlhttp://www.sqlite.org/c3ref/funclist.htmlhttp://www.sqlite.org/c3ref/funclist.htmlhttp://www.sqlite.org/c3ref/funclist.html
  • 5/28/2018 Tai Lieu Huong Dan code ios

    105/420

    97

    Filename: l ng dn n tp tin sqlite. Nu tn database c du ting vit th cn

    chun ho li theo dng UTF-8 trc khi truyn vo.

    Sdng bin SQLITE_OK kim tra trng thi trvca vic mkt ni n

    database c thnh cng hay khng.

    5.2.4.3 Khi To V Thc Thi Lnh Truy Vn

    Cu lnh truy vn c khi to v lu trvo i tng sqlite_stmt() v truyn vo

    hm sqlite_prepare_v2() thc thi.

    Hnh 5.19 khai bo i tng sqlite_stmt

    Hnh 5.20 Thc thi i tng sqlite_stmt trong sqlite3_prepare_v2

    Cu lnh SQL c thc hin bi cc lnh sau:

    Hnh 5.21Thc hin cu lnh SQL ly kt qutrv

  • 5/28/2018 Tai Lieu Huong Dan code ios

    106/420

    98

    Trong cu lnh sqlite3_step() strvcc dng nh sau:

    - Nu cu lnh sql dng INSERT, DELETE, UPDATE, CREATE th trv

    kt quc dng l SQLITE_OK bo tnh trng c thc thi c hay khng.

    - Nu cu lnh slq dng SELECT strvkt quc dng l SQLITE_ROW, l

    tp hp cc hng dliu c ly tdatabase.

    5.2.4.4 Truy Xut DLiu Database

    Khi to cu lnh truy vn.

    Hnh 5.22 Khi to cu lnh truy vn

    Bc tch dliu ly c.

    Hnh 5.23 Tch dliu ly c

    5.2.4.5 ng Kt Ni Database

    Sau khi hon tt qu trnh tng tc c sdliu, bn nn ng li kt ni c sd

    liu c

    Hnh 5.24 ng kt ni c sdliu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    107/420

    99

    5.2.5 V D

    Bc 1: khi ng firefox, vo SQLite Manager

    Hnh 5.25 Truy cp SQLite Manager

    Bc 2: to mt c sdliu mi tn l Count.

    Hnh 5.26 To CSDL mi

    Bc 3: To mt table mi

  • 5/28/2018 Tai Lieu Huong Dan code ios

    108/420

    100

    Hnh 5.27 To table

    Hnh 5.28 Khai bo thuc tnh cho Table

    Bc 4: nhp dliu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    109/420

    101

    Hnh 5.29 Nhp dliu

    Hnh 5.30 Kt qu

    Bc 5: to project mi sqlite

  • 5/28/2018 Tai Lieu Huong Dan code ios

    110/420

    102

    Hnh 5.31 To Project mi

    Hnh 5.32 in thng tin Project

    Bc 6: thit kgiao din

  • 5/28/2018 Tai Lieu Huong Dan code ios

    111/420

    103

    Hnh 5.33 Thit kgiao din

    Bc 7: thm th vin vo project.

    Hnh 5.34 Thm th vin

  • 5/28/2018 Tai Lieu Huong Dan code ios

    112/420

    104

    Hnh 5.35 Sau khi thm th vin

    Bc 8: nh xi tng

    Hnh 5.36 nh xi tng

    Bc 9: Thm tp tin sqlite vo project

  • 5/28/2018 Tai Lieu Huong Dan code ios

    113/420

    105

    Hnh 5.37 Thm file mi

    Hnh 5.38 Add

    Bc 10: thm th vin sqlite3.h vo project, khai bo i tng sqlite3 v nsstring

  • 5/28/2018 Tai Lieu Huong Dan code ios

    114/420

    106

    Hnh 5.39 Kt qunh x

    Bc 11: vit code trong hm View Didload ly ng dn ti tp tin sqlite.

    Hnh 5.40 Vit code View Didload

    Bc 12: vit code cho skin Click

    Khai bo i tng lu ng dn database.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    115/420

    107

    Hnh 5.41 Khai bo i tng lu ng dn

    Hnh 5.42 Lu ng dn vo i tng

    Khai bo i tng statment

    Hnh 5.43 Khai bo i tng sqlite3_stmt

    Vit lnh truy xut dliu

    Hnh 5.44 Lnh truy xut dliu

    Khai bo i tng lu trcu truy vn

    Hnh 5.45 Khai bo i tng lu cu truy vn

  • 5/28/2018 Tai Lieu Huong Dan code ios

    116/420

    108

    Vit code truy vn

    Hnh 5.46 Vit code truy vn dliu

    Kt qu.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    117/420

    109

    Hnh 5.47 Kt qu

    5.3 SDNG CAMERA IPHONE

    5.3.1 Gii Thiu

    Phn ny shng dn cc bn cch sdng th vin htrca iOS dng

    camera iPhone chp nh. Th vin iOS cung cp mt lp l UIImagePickController dngqun l vic tng tc vi camera hoc photo library. Tuy nhin

    UIImagePickController khng thsdng trc tip m cn ti mt i tng khc

    delegate (tha k) li n. Sau y chng ta sxy dng mt ng dng n gin dng

    camera chp nh. Giao din ca ng dng ny gm mt UIImageView hin thhnh

    nh, mt button tn l Chp nh.

    5.3.2 V DTo ng dng mi t tn l CameraApp.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    118/420

    110

    Hnh 5.48 To project mi

    Hnh 5.49 Chn ni luproject

    Thit kgiao din ng dng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    119/420

    111

    Hnh 5.50 Thit kgiao din

    nh xcc i tng vo tp tin ViewController.h.

    \

    Hnh 5.51 nh xi tng

  • 5/28/2018 Tai Lieu Huong Dan code ios

    120/420

    112

    Hnh 5.52 Kt qu

    Trong ViewController, thm on code sau tha kli UIImagePickController.

    Hnh 5.53 Tha kUIImagePickController

    Vit code cho button Chp nh.

    Hnh 5.54 Vit code cho button Chp nh

    Vit code hai phng thc ca UIImagePickController.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    121/420

    113

    Hnh 5.55 Vit code cho hai phng thc ca UIImagePickController

    Vit code cho ViewDidload.

    Hnh 5.56 Vit code cho hm ViewDidload

    Chy ng dng ln thit btht kim tra kt qu.

    5.4 UIIMAGE

    5.4.1 Gii Thiu

    UIImagedng hin thhnh nh, c thsdng cc hiu ng animation hin

    thhnh nh.

    .

    Hnh 5.57 i tng UIImage

  • 5/28/2018 Tai Lieu Huong Dan code ios

    122/420

    114

    Hnh 5.58 UIImage khi ko ra thit kgiao din

    5.4.2 Cc nh Dng nh HTrTrn Iphone

    Cc dng file nh c htrtt trn iPhone:

    5.4.3 V D

    Hin thnh tmt file c sn trn my.

    Bc 1: Add UIImageViewvo StoryBoard.

    Chn Main.storyboard

    Hnh 5.59 Chn storyboard

    Tn nh dng Tn file mrngTagged Image File Format (TIFF) .tiff, .tifJoin Photographic Experts Group (JPEG) .jpg, .jpegGraphic Interchange Format (GIF) .gifPortable Network Graphic (PNG) .pngWindows Bitmap Format (DIB) .bmp, .bmpfWindows Icon Format .icoWindows Cursor .curXwindow bitmap .xbm

  • 5/28/2018 Tai Lieu Huong Dan code ios

    123/420

    115

    Ko thUIImage thp thoi Accessibility vo Storyboard.

    Hnh 5.60 i tng UIImage View

    Hnh 5.61 Kt qusau khi ko vo storyboard

    Bc 2: nh xUIImageViewvo file NATViewController.h dng outlet vitn imgHinhAnh.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    124/420

    116

    Hnh 5.62 Kt qusau khi nh x

    Bc 3: Add file hnh vo project ang lm.

    Click phi chut vo projectchn Add Files to...

    Hnh 5.63 Thm file vo project

  • 5/28/2018 Tai Lieu Huong Dan code ios

    125/420

    117

    Hnh 5.64 Chn file cn thm vo

    Bc 4: Load file hnh vo UIImage.

    Cch 1: Chn hnh thp thoi Image View.

    Hnh 5.65 Cch chn tImage View

    Hnh 5.66 Kt qusau khi chn

    Cch 2: Gi phng thc sau load file hnh vo UIImageView.

    Hnh 5.67 Cch sdng codeMfile NATViewController.m, ti phng thc viewDidLoad.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    126/420

    118

    Hnh 5.68 Chn NATViewController

    Hnh 5.69 Vit code hin thhnh nh

    Kt qu.

    Hnh 5.70 Kt qu

    Lu : phng thc viewDidLoad sc gi mi khi chng ta mng dng.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    127/420

    119

    Cch 3: Ko thtrc tip i tng Image vo StoryBoard:

    Hnh 5.71 Ko thImage vo Storyboard

    Hnh 5.72 Kt quHin thnh tmt URL:

    Sdng phng thc initWithData load ni dung turl.

    Hnh 5.73 Code load ni dung turl

    Mfile NATViewController.m, ti phng thc viewDidLoad.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    128/420

    120

    Hnh 5.74 Mfile NATViewController.m

    Hnh 5.75 Vit code cho hm ViewDidload

    Kt qu.

    Hnh 5.76 Kt qu

  • 5/28/2018 Tai Lieu Huong Dan code ios

    129/420

    121

    5.5 UIALERT VIEW

    5.5.1 Gii Thiu

    UIAlertViewl i tng c sdng hin thni dung thng bo cho ngidng, hoc ngi dng nhp liu.

    Hnh 5.77 UIAlertView

    Hnh 5.78 UIAlertView cho php nhp liu

    5.5.2 c im

    Khi to i tng UIAlertView

    initWithTitle: message: delegate: cancelButtonTitle: otherButtonTitles

    Cc thuc tnh ca UIAlertView

    Thuc tnh Din giititle Tiu ca Alert View.message Ni dung thng boelegate i tng nhn gi trtUIAlertView.alertViewStyle Kiu ca 1 Alert View khi hin thtrn ng dngnumberOfButtons Trvslng buttons c trn Alert ViewcancelButtonIndex Vtr index ca button Cancel trn UIAlertViewfirstOtherButtonIndex Gi trca nt u tin trong UIAlertView, mc

    nh l 0.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    130/420

    122

    Cc phng thc ca UIAlertView

    Phng thc Din giiaddButtonWithTile Gn tiu cho Alert View

    buttonTitleAtIndex Ly tiu ca button ti vtr indextextFieldAtIndex Ly ni dung ca textField ti vtr index

    show Gi 1 Alert ViewdismissWithClickedButtonIndex Hu1 UIAlertView

    5.5.3 V D

    Hin thAlerView dng thng bo.

    Hnh 5.79 Hin thdng thng bo

    Bc 1: Ti phng thc viewDidLoad khi to i tng AlertView nh sau:

    thongBao= [[UIAlertViewalloc]

    initWithTitle:@"Lac Hong University"message:@"Webcome to Lac Hong University"

    delegate:self

    cancelButtonTitle:@"Ok"

    otherButtonTitles:nil, nil];

    Bc 2: Hin thAlertView bng phng thc show

    Thm on code sau vo cui phng thc viewDidLoad:

    [thongBao show];

    Bc 3: Cmd + Rchy th, kt qu:

  • 5/28/2018 Tai Lieu Huong Dan code ios

    131/420

    123

    Hnh 5.80 Kt quhin th

    Hin thAlerView dng Text Field

    Hnh 5.81 Hin thdng Text Field

    Bc 1: Khai bo AlertView

    Ti viewDidLoad khai bo AlertView nh sau:

    Hnh 5.82 Khai bo AlertView

    Bc 2: Thit lp thuc tnh alertViewStyle cho AlertView l kiu Text.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    132/420

    124

    Hnh 5.83 Thit lp thuc tnh

    Bc 3: Thit lp thuc tnh cho Text .

    Hnh 5.84 Thit lp thuc tnh

    Bc 4: Hin thAlertView.

    Hnh 5.85 Hin thAlertView

    Bc 5: Cmd + Rchy th, kt qu:

    Hnh 5.86 Hin thkt qu

    5.6 UISLIDER

    5.6.1 Gii Thiu

    UISlider l mt i tng cho php ngi dng thay i gi trbng cch di chuynthanh trt.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    133/420

    125

    Hnh 5.87 UISLIDER

    5.6.2 c imLy gi trtSlider:

    Cch 1: dng property value

    value property

    Cch 2: dng phng thc setValue

    setValue:animated:

    Thit lp gi trnhnht v ln nht cho Slider:

    - Thit lp gi trnhnht:minimumValue- Thit lp gi trln nht:maximumValue

    5.6.3 V D

    Bc 1: Thit kgiao din nh sau.

    Hnh 5.88 Thit kgiao din

    https://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/minimumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/minimumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/minimumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/maximumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/maximumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/maximumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/maximumValuehttps://developer.apple.com/library/ios/documentation/uikit/reference/UISlider_Class/Reference/Reference.html#//apple_ref/occ/instp/UISlider/minimumValue
  • 5/28/2018 Tai Lieu Huong Dan code ios

    134/420

    126

    Bc 2: Map cc i tng nh sau:

    Hnh 5.89 nh xcc i tng

    Kt qusau khi Map

    Hnh 5.90 Kt qusau khi nh x

    Bc 3: Thit lp gi trnhnht v ln nht cho Slider trong khong 550.

    MViewController.mthm on code sau vo cui phng thcviewDidLoad.

  • 5/28/2018 Tai Lieu Huong Dan code ios

    135/420

    127

    Hnh 5.91 Thit lp gi tr

    Thit lp gi trchn mc nh l 30thm on code sau vo cui phng

    thc viewDidLoad.

    Hnh 5.92 Thm code vo cui viewDidload

    Bc 4: Gn kt quca Slider vo lblGiaTriSlider khi ngi dng thay ithanh trt.

    Thm on code sau vo phng