【摘 要】本文介紹了Android移動學習系統(tǒng)中屏幕自適應的實現(xiàn),通過在外層嵌入一個適應手機分辨率布局和內(nèi)層布局嵌套實現(xiàn)屏幕布局自適應,提供了ldpi、mdpi、hdpi、xhdpi四套不用分辨率的圖片資源文件,可以適用任何手機設備的顯示,并通過一個Android系統(tǒng)界面實現(xiàn)進行了效果演示。
【關鍵詞】屏幕自適應 圖片自適應 嵌套布局
1 引言
近年來,Android憑借其開發(fā)性成為最熱門的移動終端操作系統(tǒng)之一。隨著硬件性能逐步提升、無線網(wǎng)絡不斷普及,基于Android平臺的系統(tǒng)開發(fā)與移植成為一個極富發(fā)展前景的領域。
移動學習在數(shù)字化學習的基礎上通過有效結合移動計算技術帶給學習者隨時隨地學習的全新感受。移動學習被認為是一種未來的學習模式,或者說是未來學習不可缺少的一種學習模式,移動學習現(xiàn)今已是教育行業(yè)發(fā)展的必然應用趨勢。移動學習系統(tǒng)提供了靈活多變的學習方式,無論在出差路上,還是在機場車站;無論是等候間歇,還是片斷時間,隨時隨地,打開你的智能手機和平板電腦登錄中信移動學習平臺,都可以方便瀏覽最新資訊、閱讀新書、學習課程。而且提供了先進高效的學習理念,中信移動學習的課程系列采用了最新的LPM學習過程管理,將課程劃分成精心提煉的章節(jié),分段按時推送,輔以大量學習補充資料,并在過程中增加了許多分享互動環(huán)節(jié),促使學員結合實際工作進行思考,加強記憶的同時更提升學習效果。移動學習系統(tǒng)還掌控了學習效果,通過對學員的學習資料下載、經(jīng)驗分享、登錄次數(shù)等關鍵數(shù)據(jù)統(tǒng)計,可以了解到學員的學習習慣及學習主動性,企業(yè)的管理層可以憑借此對學員學習效果進行有效跟進和掌握。目前移動學習系統(tǒng)已經(jīng)越來越被學習者關注。
2 Android界面布局
2.1 android的基本布局
Android基本布局共5種,如圖1所示。線性布局由LinearLayout類來代表,線性布局分為水平和垂直的順序排列子元素,每個子元素都位于前一個元素之后。表格布局由TableLayout所代表,TableLayout繼承了LinearLayout,因此它的本質(zhì)依然是線性布局,適用于N行M列的布局格式。
圖1
2.2 布局的嵌套使用
在開發(fā)一些復雜界面時,單一布局無法滿足需求。此時就需要用到嵌套布局。同時為了達到某種效果,需要局部的頁面能夠動態(tài)的變化,最典型的就是在一個頁面中使用多個ViewPager。當這些ViewPager所在的頁面也是動態(tài)變化的時候,就需要實現(xiàn)多層LinearLayout的嵌套。比如一個標簽頁面,標題欄是靜態(tài)的,內(nèi)容部分是動態(tài)變化的,同時每個內(nèi)容中又需要動態(tài)變化,代碼實現(xiàn)時就需要迭代循環(huán)添加來實現(xiàn)。Android可以通過五種基本布局的嵌套來實現(xiàn)復雜界面布局。
3 界面布局自適應設計原理
首先根據(jù)需求確定根布局,可以使用LinearLayout布局或者RelativeLayout布局,設置layout_width和layout_height均為匹配手機分辨率match_parent。再則使用RelativeLayout布局來設計標題欄,設置其寬layout_width為match_parent,而layout_height為定高45dip;然后,在內(nèi)容板塊添加子元素,此時子元素將會按順序排列,在根布局的子元素中添加新的布局,實現(xiàn)布局嵌套。在每個根布局的子元素布局中,設置其寬layout_width為match_parent,而其layout_height為根據(jù)內(nèi)容填充wrap_content,這樣就可以實現(xiàn)布局的多重布局。
對于添加的布局LinearLayout或者RelativeLayout,設置為layout_width=“match_parent”,這樣主要來實現(xiàn)布局的自適應布局大小的效果。
對于添加的圖片資源,通過切圖事,考慮四種不同大小的分辨率ldpi、mdpi、hdpi、xhdpi的圖片資源,分別存放在android工程文件下的res文件下的不用資源包,當手機分辨率超出了圖片分辨率適應范圍時,通過文件自動選擇到相應分辨率適應范圍圖片資源文件夾,選擇相應的圖片對應顯示。
4 Android移動學習系統(tǒng)中界面布局自適應實現(xiàn)
4.1 界面布局自適應
設置根布局為LinearLayout,設置layout_width和layout_height均為匹配父框架match_parent,其orientation屬性為“vertical”,首先加入FrameLayout幀布局,在其子元素中加入ScrollView滾動視圖,設置它們的layout_width=\"match_parent\"和layout_height=\"match_parent\",那么在ScrollView滾動視圖中添加的子元素布局,來填充頁面內(nèi)容。
5 結束語
在Android移動學習系統(tǒng)開發(fā)中,通過屏幕自適應實現(xiàn)和圖片自適應實現(xiàn),可以減少界面布局修改和設計的工作量,提高了開發(fā)效率和系統(tǒng)執(zhí)行效率。未來Android手機分辨率將會越來越多樣,屏幕自適應在Android手機應用系統(tǒng)中也將具有推廣價值。
【參考文獻】
[1]朱桂英.Android移動開發(fā)技術叢書[M].北京:電子工業(yè)出版社.2012.
[2]譚忠兵.蘇斯燦.基于Android的多功能文件管理系統(tǒng)的設計與實現(xiàn)[J].電腦與信息技術.2012.
[3]楊豐盛.Android應用開發(fā)解密[M].背景:機械工業(yè)出版社.2003.