Professional Documents
Culture Documents
Tng quan
Trong Android, dng Activity hin th mn hnh. Mi activity s cha cc View theo dng cu trc cy, ngha l mt Layout gc cha cc view/layout con bn trong hoc ch c 1 view duy nht. (lu Layout cng l mt view nh) C th thit k giao din trong code java hoc trong file xml trong th mc layout.
Ni dung
Activity View class XML layout Android layout Connect layout to Java Code
Activity?
Activity l mt trong 4 thnh phn chnh ca mt ng dng Android. Activity c dng hin th mt mn hnh. Khi lm vic vi activity cn bt u vi mt s kin thc c bn sau:
Lifecycle ca activity Khi ng mt activity, lin lc gia 2 activity Task To menu, dialog
Lifecycle ca Activity
Khi ng mt activity
Dng Intent:
Khai bo tng minh: cung cp chnh xc thng tin ca activity cn gi (nu cng ng dng ch cn cung cp tn class, nu ng dng khc nhau th cung cp tn package, tn class) Khai bo khng tng minh: cung cp thao tc cn lm g, vi loi d liu no, thao tc thuc nhm no h thng s tm activity tng ng khi ng.
Khi ng mt activity
Khi ng mt activity
Khi ng mt activity
Vi cch khi ng activity khng tng minh, bn cn bit mt cht v Intentfilter. Intent-filter s gip mt activity (chung hn l mt thnh phn ng dng) ng k vi h thng mnh c th lm c thao tc g, trong nhm no, vi loi d liu no. Nh vy khi intent v intent-filter khp nhau, activity s c h thng khi ng.
C th khi ng mt activity vi mt yu cu no v activity kia khi lm xong cng vic s tr li kt qu cho activity trc V d activity A yu cu mt activity lm gip vic chp nh, activity B p ng c vic ny, sau khi user chp nh xong s tr li file nh cho activity A. Nh th s tn nhiu cng sc lm mt vic m ngi khc lm ri.
Tree view
Layout mu ca helloworld
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text=@string/hello /> </LinearLayout>
Mt s thuc tnh c bn
Layout_width, layout_height: chiu rng ca view (fill_parent l to bng kch thc ca layout cha view ny, wrap_content l va ni dung cn hin th ca view) Orientation: vi LinearLayout, vic sp xp cc view l nm k nhau theo hng ngang hoc hng dc, ta khai bo orientation chn sp theo kiu no (horizontal/vertical)
Mt s thuc tnh c bn
Gravity: thuc tnh ny qui nh cc view nm bn trong layout s t theo v tr no so vi layout(trung tm, tri , phi, trn di) Weight: cc view phan chia t l din tch hin th trn mn hnh (t l tnh theo weight ca tng view trn tng s weight, cc view ko khai bo weight th s xem qua width v height)
V d c bn
Vao link ny ly code cho vo ng dng, lu c thm cc dng gii thch ting Anh http://developer.android.com/resources/tuto
Vi LinearLayout (LL), cc view bn trong n c t k nhau theo hng ngang hoc hng dc (cn lu c im ny) Vi v d va ri, ta thy cch phn tch nh sau:
Nguyn tc ch yu l phn nhm cc View lin tip k nhau (nh 3 TextView k nhau theo hng dc hoc hng ngang trong v d trn) vo trong mt LL, phn r t ln n nh. Nh vy mn hnh gm 1 LL ln bao bn ngoi, nhn thy bn trong chia thanh 2 phn trn di r rng vy thuc tnh ca LL ny l dng dc, sau chia i ra v phn tch tip. Phn bn trn li chia thnh 2 na theo hng ngang l mt LL dng ngang, li chia i: mt bn l 1 ImageView (v ch c 1 view nn ko cn b vo trong LL), mt bn li l 1 LL cha 3 TextView theo hng dc. Na bn di ta thy r rng cha 3 TextView k nhau
Xem cy:
LinearLayout
Cc bc nh sau:
Phn tch thnh phn layout trn giy (tho lun) Phn tch c im cc view Add thm resource nh Th trc vi vi tab layout (khi view file xml trong eclipse) a vo thc thi trn my, nh gi.
FrameLayout: cc view bn trong c qui nh v tr bng khong cch so vi bin tri v trn so vi layout, cc view c th ln nhau. RelativeLayout: cc view c thit k da trn quan h gia chng vi nhau v vi layout cha chng. AbsoluteLayout.
Hn ch su ca cy Vi cc Layout phc tp, ng dng RelativeLayout Nn chn vo d liu tm xem trc layout hin th ra sao bn tab layout (trong eclipse), nhng xong ri th nh xa d liu tm i. FrameLayout c vn vi background Mun tm thuc tnh g, bm android: ri i suggestion s ra xem.
Mt s v d
http://developer.android.com/resources/tutorials/ http://developer.android.com/resources/tutorials/
List
Rt hay dng trong Android. c bit cc ng dng cn lu tr v hin th nhiu d liu. List l mt danh sch cc view thng thng c cng dng layout t lin nhau.
ApiDemos
New android project Create project from existing source Browse m th mc SDK platforms android-3 samples ApiDemos OK Finish. M th mc project trong eclipse src m com.example.android.apis.view