Sunday, 27 April 2014

Андройд хөгжүүлэгчийн хөтөч - 3р бүлэг - Layout-г тунхаглах

Layout-г тунхаглах
/Ихэнх нэр томьёог үнэхээр орчуулж барахгүй юм байна. Орчуулж байна гээд дараа нь өөрийнхөө болон өрөөлийн толгойг эргүүлж байхаар зарим үгсийг орчуулалгүй англиар бичих юмуу криллээр галиглаж бичиж байя./
 
Layout нь активитигийн UI-н бүтэц, загварыг тодорхойлж, хэрэглэгчид харагдах бүхий л элементүүдийг өөртөө агуулж байдаг. Хөгжүүлэгч нь хоёр аргаар layout -г тунхаглах боломжтой.
  1. XML файлд UI-г урьдчилан тодорхойлох
  2. Активити ажиллах явцад(at runtime) layout элементийн хувилбарыг үүсгэх
Хөгжүүлэгч нь энэ хоёр аргыг хоёуланг нь хэрэглэх боломжтой. Жишээ нь: XML файлаар UI урьдчилан тунхагласны дараа аппликейшн ажиллах явцад xml доторх UI object-н төлөвийг өөрчлөгдөхөөр програмчилж болно. 
Андройд фреймворк нь UI-г тунхаглах мөн залуурдах функцуудыг агуулж байдаг.
XML файлд layout-г тодорхойлсноор UI-н загвар бүтэц болон програм код хоёрыг тусгаарлаж өгсөн юм. Ингэснээр програм кодыг өөрчилсөн ч layout-г дахин уншуулж хөрвүүлэх шаардлагагүй мөн UI-н бүтэц нь ойлгомжтой болж байгаа юм. Жишээ нь: мобайл төхөөрөмж болгонд тохирсон эсвэл өөр өөр хэл дээр хэд хэдэн тусдаа layout үүсгэж, аппликейшн уншигдахад тухайн нөхцөлд тохирох layout-г хэрэглэж болох юм.
XML дэх элемент нь ижил нэртэй класстай, attribute нь ижил нэртэй функцтэй байдаг. Ингэж тохирох класс болон функцтэй нь ойролцоо нэр өгсөн нь тухайн элемент, аттрибют нь ямар үүрэгтэй болохыг ялгаж өгөхийг тулд юм.
XML байгуулах
Layout файл нь нэг язгуур элементтэй байх ёстой. Тэр View юм уу ViewGroup юм. Язгуур элементийг тодрхойлсны дараа түүний дотор өөр layout юмуу виджетийг тодорхойлох замаар шатчилсан view бүтцийг байгуулна. Жишээ нь:
 
Ингэж байгуулсан xml файлаа прожект доторх res/layout директорид хадгалаарай.
XML resource-г ачаалах
XML resource нь аппликейшныг хөрвүүлэх үед view resource-руу хөрвүүлэгдэнэ. Activity.onCreate() функц дотор setContentView() функцийг дуудаж, түүний параметрээр view resource-г дамжуулснаар resource ачаалагдана. onCreate() функцыг активити ажиллаж эхлэхэд андройд фреймворк дуудаж ажиллуулдаг юм. Жишээ нь:
Аттрибют - Attribute
View болон ViewGroup object нь өөрийн гэсэн Xml аттрибюттай байдаг. Эдгээр дунд тэдний эцэг view object-с уламжлагдан ирсэн аттрибютууд ч байна.
ID
View object гэх мэт бүхий л элементүүд өөрийгөө таниулах ID аттрибюттэй байх ба аппликейшныг хөрвүүлэх үед энэхүү ID нь бүхэл тоон утга авна. XML файл дотор id аттрибютэд утга өгөх: android:id="@+id/my_btn"
Андройд фреймворкд урьдчилан тодорхойлогдсон id resource-ууд байдаг. Эдгээрийг дуудаж хэрэглэхийн тулд android:id=@android:id/empty үүн шиг андройд гэсэн нэршлийг хэрэглэнэ. Ингэснээр андройд нь тухайн id resource-г прожезт доторх resource class дотор биш android.R class-аас дуудаж авчирна.
View-Г байгуулж, аппликейшнээс түүнийг дуудахдаа дараах үйл явцыг гүйцэтгэнэ.
  1. Layout файл дотор view/widget-г байгуулж, түүнд id утга өгнө.
  2. Програм кодны onCreate() функц дотор тухайн view object-н хувилбарыг байгуулж, тэр хвилбартаа layout-д урьдчилан тодорхойлсон view/widget-г хуваарилаж өгнө.
Layout параметр

Нэр томьёо
програм ажиллах явц - runtime
язгуур - root

No comments:

Post a Comment