精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Android用戶界面設計:布局基礎

移動開發 移動應用 Android
本文為Android用戶界面設計教程——布局基礎。在這個教程里,我們提供一個關于布局如何適應Android應用程序架構的概述。

理解布局對于好的Android應用設計來說是非常重要的。在這個教程里,我們提供一個關于布局如何適應Android應用程序架構的概述。我們還探討了一些特定的可用布局控件,用它們來以各種各樣的方式組織應用程序屏幕內容。

什么是布局?

Android開發者使用術語“布局”,指的是兩種含意中的一種。兩種定義在這篇教程中都會用到,而且很不幸的是在Android開發社區它們被混著使用。布局的兩種定義如下:

一種資源,它定義了在屏幕上畫什么。布局資源存儲在應用程序的/res/layout資源目錄下的XML文件中。布局資源簡單的說就是一個用于用戶界面屏幕,或屏幕的一部分,以及內容的模板。

一種視圖類,它的主要是組織其它控件。這些布局類(LinearLayout,,RelativeLayout,TableLayout等)用于在屏幕上顯示子控件,如文本控件或按鈕或圖片。

Android用戶界面可以定義為XML中的布局資源或程序動態創建。

使用Eclipse設計布局資源

Eclipse的Android開發插件包含了一個很方便的用于設計和預覽布局資源的布局資源設計器。這個工具包括兩個標簽視圖:布局視圖允許你預覽在不同的屏幕下以及對于每一個方向控件會如何展現;XML視圖告訴你資源的XML定義。布局資源設計器如下圖:

布局資源設計器

這里有一些關于在Eclipse中使用布局資源編輯器的技巧:

◆使用概要(Outline)窗格來在你的布局資源中添加和刪除控件。

◆選擇特定的控件(在預覽或概要窗口)并使用屬性窗格來調整特定控件的屬性。

◆使用XML標簽來直接編輯XML定義。

很重要的是要記住一點,Eclipse布局資源編輯器不能完全精確的模擬出布局在最終用戶那的展現。對此,你必須在適當配置的模擬器中測試,更重要的是在目標設備上測試。而且一些“復雜”控件,包括標簽或視頻查看器,也不能在Eclipse中預覽。#p#

定義XML布局資源

設計程序用戶界面最方便且可維護的方式是創建XML布局資源。這個訪法極大地簡化了UI設計過程,將許多用戶界面控件的靜態產物和布局,以及控件屬性定義移動XML中,代替了寫代碼。它適應了UI設計師(更關心布局)和開發者(了解Java和實現應用程序功能)潛在的區別。開發者依然可以在必要的時候動態的改變屏幕內容。復雜控件,像ListView或GridView,通常用程序動態地處理數據。

XML布局資源必須存放在項目目錄的/res/layout下。對于每一屏(與某個活動緊密關聯)都創建一個XML布局資源是一個通用的做法,但這并不是必須的。理論上來說,你可以創建一個XML布局資源并在不同的活動中使用它,為屏幕提供不同的數據。如果需要的話,你也可以分散你的布局資源并用另外一個文件包含它們。

下面是一個簡單的XML布局資源,一個LinearLayout模板包含一個TextView和一個ImageView,定義在XML中:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2.  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.  android:orientation="vertical" 
  4.    
  5. android:layout_width="fill_parent" 
  6.  android:layout_height="fill_parent" 
  7.    
  8. android:gravity="center"> 
  9.  <TextView 
  10.    
  11. android:layout_width="fill_parent" 
  12.  android:id="@+id/PhotoLabel" 
  13.    
  14. android:layout_height="wrap_content" 
  15.  android:text="@string/my_text_label" 
  16.    
  17. android:gravity="center_horizontal" 
  18.  android:textSize="20dp" /> 
  19.    
  20. <ImageView 
  21.  android:layout_width="wrap_content" 
  22.    
  23. android:layout_height="wrap_content" 
  24.  android:src="@drawable/matterhorn" 
  25.    
  26. android:adjustViewBounds="true" 
  27.  android:scaleType="fitXY" 
  28.    
  29. android:maxHeight="250dp" 
  30.  android:maxWidth="250dp" 
  31.    
  32. android:id="@+id/Photo" /> 
  33.  </LinearLayout> 

這個布局資源表示屏幕包含兩個控件:首先有一些文字,然后在它下面有一個圖片。這些控件組織在一個垂直方向的LinearLayout中。下面兩幅圖片展示了這個布局在橫屏和豎屏下可能的樣式:

橫屏

 豎屏

在屏幕上顯示一個布局資源只需要有包括onCreate()的一行代碼就可以搞定。如果布局資源存放在/res/layout/main.xml文件,代碼可能是:

  1. setContentView(R.layout.main); 

用程序動態定義布局

你也可以用程序創建用戶界面組件。為了易組織和可維護性,僅在特殊時候這樣做,而不是在一般情況下。不是直接使用setContentView()方法來加載布局資源,你必須創建屏幕內容然后向setContentView()方法提供包含所有要顯示的子控件內容的父布局對象。

例如,下面的代碼展示了如何用程序實例化一個LinearLayout視圖并向里面放置兩個TextView。沒有使用任何資源。

  1. public void onCreate(Bundle savedInstanceState) {  
  2.  super.onCreate(savedInstanceState);  
  3.  // setContentView(R.layout.main);  
  4.    
  5.  TextView label = new TextView(this);  
  6.  label.setText(R.string.my_text_label);  
  7.  label.setTextSize(20);  
  8.  label.setGravity(Gravity.CENTER_HORIZONTAL);  
  9.    
  10.  ImageView pic = new ImageView(this);  
  11.  pic.setImageResource(R.drawable.matterhorn);  
  12.  pic.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));  
  13.  pic.setAdjustViewBounds(true);  
  14.  pic.setScaleType(ScaleType.FIT_XY);  
  15.  pic.setMaxHeight(250);  
  16.  pic.setMaxWidth(250);  
  17.  LinearLayout ll = new LinearLayout(this);  
  18.  ll.setOrientation(LinearLayout.VERTICAL);  
  19.  ll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));  
  20.  ll.setGravity(Gravity.CENTER);  
  21.  ll.addView(label);  
  22.  ll.addView(pic);  
  23.  setContentView(ll);  

如你所見,這些代碼的大小將隨著更多的控制添加到屏幕而迅速增加,使得屏幕內容更加難以維護和重用。#p#

探索不同的布局類型

現在讓我們把注意力轉向對組織其它控件很有用的布局控件。最常用的布局類是:

◆FrameLayout – 用于顯示一堆子視圖控件。多視圖控件可以添加到這個布局中。它可以用來在相同的屏幕空間展示多個控件。

◆LinearLayout – 用于在單行或單列中顯示子視圖控件。這對于創建表單來說是非常方便的布局方法。

◆RelativeLayout – 用于相對彼此地顯示子視圖控件。比如,你可以設置一個控件相對另一個控件“在上方”或“在下方”或“在左邊”或“在右邊”。你也可以相對于父級元素的邊界來放置子視圖控件。

◆TableLayout – 用于將子視圖控件組織到行或列。對于表格的每一行,單個視圖控件使用TableRow布局視圖被添加到表格的每一行。

不同的布局類型 

不同的布局類型 

不同的布局類型 

不同的布局類型

用復合布局來組織控件

布局(LinearLayout,TableLayout,RelativeLayout等)像其它控件一樣也是一個控件。這意味著布局控件可以被嵌套。比如,為了組織屏幕上的控件你可以在一個LinearLayout中使用一個RelativeLayout,反過來也行。下面的圖展示了一個屏幕,它有一個LinearLayout(父級),一個TableLayout(頂部子節點)以及一個FrameLayout(底部子節點)。

用復合布局來組織控件

但是小心!保證你的屏幕相對簡單,復雜布局加載很慢并且可能引起性能問題。

提供可選布局資源

在你設計你的程序布局資源時考慮設備的差異性。通常情況下是可能設計出在各種不同設備上看著都不錯的靈活布局的,不管是豎屏還是模屏模式。必要的時候,你可以引入可選布局資源來處理特殊情況。例如,你可以根據設備的方向或設備是不是有超大屏幕(如網絡平板)來提供不同的布局供加載。

想了解更多的關于如何使用可選資源的信息,查看Android SDK的Android資源方面的文檔.

布局工具和優化

Android SDK包括幾個可以幫助我們設計,調試和優化布局資源的工具。除了Eclipse的Android插件中內置的布局資源設計器,你可以使用Android SDK提供的Hierarchy Viewer(層次結構查看器)和layoutopt。這些工具在你的Android SDK的/tools目錄下可以找到。

你可以使用Hierarchy Viewer來查看布局運行時的詳細情況。可以在Android開發者網站的Hierarchy Viewer部分了解更多信息。

你可以使用layoutopt(布局優化)命令行工具來優化你的布局文件。優化布局非常重要,因為復雜的布局文件加載很慢。layoutopt工具簡單地掃描XML布局文件并找出不必要的控件。在Android開發者網站的layoutopt部分查看更多信息。

總結

Android應用程序用戶界面使用布局來定義。有許多不同類型的布局類型可以用來組織屏幕上的控件。布局可以使用XML資源定義,也可以通過Java程序在運行時來定義。可選布局可以在特殊情況下被加載,比如在橫屏和豎屏模式下提供一個可選用戶界面。***,設計良好的布局對于應用程序性能很重要;使用像Hierarchy Viewer和layoutopt之類的Android SDK工具來調試和優化你的應用程序布局。

【編輯推薦】

  1. Android用戶界面設計:基本按鈕  
  2. Android用戶界面設計模板Dashboard反例展示  
  3. Android用戶界面設計模板Dashboard產品展示  
責任編輯:佚名 來源: rockux.com
相關推薦

2011-04-11 17:25:30

線性布局用戶界面設計Android

2011-04-19 09:19:37

相對布局界面設計Android

2011-04-22 11:01:36

框架布局界面設計Android

2011-04-08 13:58:10

Android界面設計

2011-05-19 08:49:01

使用片段界面設計Android

2011-06-01 10:58:57

2011-06-01 10:30:41

用戶界面

2011-12-20 10:42:22

Android應用界面設計

2013-11-27 10:12:11

2011-03-02 14:03:02

DashboardAndroid用戶界面反例模板

2011-03-02 10:49:42

DashboardAndroid用戶界面設計模板

2012-01-16 16:16:49

JavaSwing

2011-06-01 16:50:05

Android ListView

2013-12-26 15:46:30

Android開發Android應用用戶界面設計

2011-11-04 16:34:20

控件Android

2014-11-26 10:42:55

界面設計

2012-01-16 11:03:09

javaswing

2011-06-01 09:31:46

用戶界面設計

2011-10-09 11:05:13

Android 4.0

2014-04-03 09:49:20

設計界面設計
點贊
收藏

51CTO技術棧公眾號

亚洲va久久久噜噜噜| 在线成人一区二区| 欧洲精品一区二区三区久久| 五月天婷婷在线播放| 久久中文在线| 久久久999精品| 粉嫩av懂色av蜜臀av分享| 欧美日韩五码| 亚洲一区中文在线| 热re99久久精品国产99热| 国产又大又黄的视频| 国产欧美激情| 久久综合五月天| 91成人破解版| 中文字幕一区二区三区日韩精品| 色婷婷综合久久久中文一区二区| 日本黄色a视频| 四虎在线免费看| 狠狠狠色丁香婷婷综合久久五月| 亚洲91精品在线| 日韩精品一区二区亚洲av性色| 欧美三级自拍| 日韩一区二区三区在线观看| 久久久久久久久久久免费视频| 18视频在线观看| 中文字幕精品一区| 国产一区二区三区黄| 亚洲熟女乱色一区二区三区久久久| 亚洲黑丝一区二区| 久久精品一本久久99精品| 中文字幕被公侵犯的漂亮人妻| 亚洲国产中文在线| 欧美人与z0zoxxxx视频| 精品免费国产一区二区| 国产美女情趣调教h一区二区| 国产午夜久久久久| 国产一区二区三区高清| 亚洲国产一二三区| 精品一区二区精品| 国产精品电影一区| 免费污污视频在线观看| 亚洲精品护士| 欧美激情2020午夜免费观看| 久久高清内射无套| 久久精品国产大片免费观看| 亚洲午夜av电影| aa片在线观看视频在线播放| 国语一区二区三区| 精品国产乱码久久久久久久| 中文国产在线观看| 国产aⅴ精品一区二区四区| 欧美视频一区二区在线观看| 国产视频一区二区视频| 国产高清不卡| 色婷婷一区二区三区四区| 大陆极品少妇内射aaaaa| 丁香花在线电影| 亚洲国产一二三| 成人免费播放器| 国产福利片在线观看| 亚洲成a人片在线观看中文| 日韩亚洲欧美一区二区| 七七久久电影网| 亚洲一区二区三区免费视频| 成人免费视频91| 成人ssswww在线播放| 午夜av电影一区| 免费看一级大黄情大片| 国产精品av一区二区三区| 色一情一伦一子一伦一区| 中文字幕国产传媒| 热久久久久久| 欧美一级理论片| 性一交一黄一片| 高潮久久久久久久久久久久久久 | 日韩在线播放一区| 欧美一级片在线视频| 欧美一区二区三区久久精品| 国内精品小视频在线观看| 天天操夜夜操视频| 麻豆精品新av中文字幕| 国产精品18毛片一区二区| 婷婷视频在线观看| 国产无一区二区| 国产成人精品免费看在线播放| 天堂av资源在线观看| 欧美日韩在线视频一区| 亚洲天堂网一区| 天堂av一区| 亚洲欧美日韩爽爽影院| 三级av在线免费观看| 亚洲区国产区| 国产免费亚洲高清| 你懂的网站在线| 欧美国产精品一区二区三区| 日韩成人手机在线| 欧美一区 二区 三区| 欧美一区二区三区在线| 亚洲一区二区三区无码久久| 97精品国产一区二区三区| 97视频在线观看视频免费视频| 一级一级黄色片| 国产成人在线视频网站| 清纯唯美一区二区三区| 影音先锋在线播放| 欧美色视频一区| 自拍视频一区二区| 亚洲人成免费网站| 国产成人激情视频| 欧美一区二区黄片| 最好看的中文字幕久久| 任你操这里只有精品| 粉嫩一区二区三区四区公司1| 在线成人激情黄色| 永久免费无码av网站在线观看| 国产在线不卡一区| 日韩中文不卡| 两个人看的在线视频www| 欧美一区二区私人影院日本| 欧美激情久久久久久久| 午夜亚洲视频| 国产精品免费区二区三区观看| 免费的黄网站在线观看| 色www精品视频在线观看| 久久久老熟女一区二区三区91| 五月天激情综合网| 国产精品视频久久久| 毛片网站在线观看| 欧美日韩国产中文精品字幕自在自线| 伊人av在线播放| 亚洲一本二本| 91亚洲午夜在线| 思思99re6国产在线播放| 在线亚洲一区二区| 国产黄片一区二区三区| 久久av在线| 久久久神马电影| 免费在线小视频| 亚洲国产精品va在线观看黑人| 欧美日韩国产精品一区二区三区| 久久99国产精品麻豆| 亚洲午夜精品久久| 精品久久毛片| 色婷婷综合久久久久| 中国一级特黄视频| 中文字幕欧美区| 91香蕉视频污版| av资源久久| 国产精品永久在线| 三区四区在线视频| 91麻豆精品国产91久久久久久久久 | 久久精品亚洲一区二区三区浴池 | 亚洲国产精品久久久久| 黄色小视频在线免费看| jvid福利写真一区二区三区| aa视频在线播放| 丝袜久久网站| 国产精品成人播放| 亚洲搞黄视频| 日韩一区二区三区视频在线| 欧美色图亚洲天堂| 成人午夜av电影| 久色视频在线播放| 精品国产网站| 91精品久久久久久久久久另类| 免费a在线看| 日韩精品一区二区三区视频在线观看 | 国产精品a级| 国产一区二区在线网站| www.成人影院| 色爱av美腿丝袜综合粉嫩av| 国产日韩一级片| 亚洲国产欧美日韩另类综合| 亚洲专区区免费| 蜜臀av性久久久久蜜臀aⅴ流畅| 免费在线精品视频| 国产精品毛片av| 国产精品wwww| 18av在线视频| 精品视频中文字幕| 91午夜交换视频| 亚洲国产日韩精品| 在线观看亚洲大片短视频| 国内成人精品2018免费看| 日韩精品一区在线视频| 欧美日韩性在线观看| 超碰97人人在线| 芒果视频成人app| 不卡av电影在线观看| 天天av综合网| 欧美一级在线视频| 国产成人在线视频观看| 国产精品国产三级国产有无不卡| 色悠悠在线视频| 日日夜夜免费精品视频| 992tv快乐视频| jiujiure精品视频播放| 国产另类自拍| **国产精品| 青青青国产精品一区二区| gogo在线高清视频| 亚洲情综合五月天| 人妻中文字幕一区| 欧美老年两性高潮| 成人午夜视频在线播放| 亚洲狠狠丁香婷婷综合久久久| 国产毛片久久久久久久| 成人av在线网| 国产又粗又猛大又黄又爽| 久久男女视频| 国产毛片视频网站| 中文字幕一区二区三区乱码图片 | 欧美日本一区二区视频在线观看 | 91九色视频导航| 户外露出一区二区三区| 久久久亚洲影院| 成人看av片| 色999日韩欧美国产| 国产九九在线| 日韩久久免费电影| 风流老熟女一区二区三区| 在线成人免费视频| 欧美日韩在线视频播放| 欧美日韩亚洲精品一区二区三区| 久久影院一区二区| 亚洲青青青在线视频| 国产午夜精品久久久久久久久| 91麻豆免费看片| 美女网站视频在线观看| 东方aⅴ免费观看久久av| 911av视频| 精品写真视频在线观看| 中文字幕 日韩 欧美| 青青草97国产精品免费观看| 人妻内射一区二区在线视频| 亚洲免费在线| 黄色一级片播放| 亚洲在线成人| 亚洲午夜无码av毛片久久| 999亚洲国产精| 日韩av一二三四区| 久久久蜜桃一区二区人| 无码人妻h动漫| 日本欧美一区二区三区乱码 | 福利一区二区| 国产精品免费小视频| 欧美啪啪网站| 成人国产精品久久久| 国产精选久久| 不卡视频一区| 精品成人自拍视频| 精品一区二区三区自拍图片区| 日韩有码av| 日韩欧美一区二区三区四区五区| 欧美美女一区| 亚洲欧洲国产日韩精品| 在线精品视频在线观看高清| 看全色黄大色大片| 亚洲经典在线| 亚洲中文字幕久久精品无码喷水| 日本美女一区二区三区| 九九九九九伊人| 国产成人av电影| 狠狠人妻久久久久久综合蜜桃| 久久精品夜夜夜夜久久| 免费成人深夜夜行网站| 一卡二卡欧美日韩| 黄色在线免费观看| 欧美久久一二区| 亚洲精品无遮挡| 亚洲人成自拍网站| 精品欧美色视频网站在线观看| 欧美成人手机在线| 3344国产永久在线观看视频| 国产成人拍精品视频午夜网站| 欧美男女视频| 精品日本一区二区| 日本欧美视频| 女人被男人躁得好爽免费视频| 99在线热播精品免费99热| 在线观看av日韩| 国产成人在线观看免费网站| 女尊高h男高潮呻吟| 中文字幕欧美日本乱码一线二线| 欧美激情一区二区视频| 日韩欧美黄色动漫| 国产视频第一页| 日韩av在线不卡| 好吊日视频在线观看| 97在线视频精品| 在线不卡一区| 欧美大香线蕉线伊人久久| 婷婷中文字幕一区| 日韩黄色片视频| 国产麻豆成人传媒免费观看| 性久久久久久久久久| 一区二区在线免费| 91麻豆精品在线| 亚洲第一区第二区| 成年人视频在线看| 欧美第一黄网免费网站| 欧美大片高清| 国产99在线免费| 久久在线视频免费观看| 国产精品少妇在线视频| 成人一区二区三区| 日韩精品一区二区亚洲av性色 | 欧美丰满少妇xxxxx| www.久久.com| 乱一区二区三区在线播放| 欧美a级片网站| gogogo高清免费观看在线视频| 91美女视频网站| 亚洲精品午夜久久久久久久| 91精品国产手机| 1024免费在线视频| 日韩免费在线视频| 欧美深夜视频| 久久久久久久久久网| 国产精品99久久久久久宅男| 呻吟揉丰满对白91乃国产区| 色8久久精品久久久久久蜜| 日本激情一区二区| 欧美黑人xxx| 国产95亚洲| 色哺乳xxxxhd奶水米仓惠香| 美国av一区二区| 69精品无码成人久久久久久| 欧美日韩美女视频| 天天操天天干天天舔| 欧美激情中文字幕乱码免费| 日日夜夜精品视频| 在线观看av的网址| 国产一区二区三区黄视频| 亚洲精品电影院| 欧美三电影在线| 999国产在线视频| 国产精品久久久久久亚洲影视 | 六月丁香婷婷综合| 亚洲精品720p| 美女高潮在线观看| 精品在线观看一区二区| 亚洲一区中文| 成年人在线免费看片| 91福利国产成人精品照片| 大地资源中文在线观看免费版| 国产99在线|中文| 精品毛片免费观看| 日本在线观看免费视频| 国产精品毛片大码女人| 国产精品久久久国产盗摄| 久久在线精品视频| 欧美成年网站| 国产freexxxx性播放麻豆| 成人在线视频一区| 国产高潮久久久| 一区二区三区无码高清视频| 成人黄色图片网站| 成人黄色片免费| 成人91在线观看| 无码视频在线观看| 色婷婷av一区二区三区在线观看| 99精品视频在线免费播放| 免费人成在线观看视频播放| 99视频在线精品| 看黄色一级大片| 俺去亚洲欧洲欧美日韩| 136福利精品导航| 精品99在线视频| 国产精品乱人伦| 精品国产18久久久久久| 91av网站在线播放| 日韩久久精品| 日本一级大毛片a一| 欧美特级www| 久久精品视频免费看| 国产精品久久久久久久小唯西川 | 亚洲一区久久久| 亚洲国产国产亚洲一二三 | 亚洲男人天堂一区| 午夜影院免费体验区| 国产精品主播视频| 在线成人黄色| 亚洲黄色网址大全| 精品剧情v国产在线观看在线| 韩国美女久久| 精品国产一区二区三区在线| 久久免费看少妇高潮| 国产美女免费看| 热99久久精品| 中文视频一区| 69视频在线观看免费| 精品久久人人做人人爰| 91福利精品在线观看| 久久av综合网| 亚洲欧洲日韩在线| 免费在线看v| 国产成人精品日本亚洲11| 日本欧美在线看| 久久久久女人精品毛片九一|