色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

Android用戶界面設計:框架布局

  框架布局是將控件組織在Android程序的用戶界面中最簡單的布局類型之一。

  理解布局對于良好的Android程序設計來說是非常重要的。在這個教程里,你將學到所以關于框架布局的知識,它們主要用來在屏幕上組織特別的或重疊的視圖控件。使用得當的話,很多有趣的Android程序用戶界面都可以基于框架布局來設計。

  什么是框架布局

  框架布局是Android開發者組織視圖控件最簡單和最有效的布局之一。它們使用得比其它一些布局要少一些,只是因為它們一般只用于顯示單個視圖,或重疊的視圖??蚣懿季殖S米魅萜鞑季?,因為它一般只有一個子視圖(通常是另一個布局,用于組織多個視圖)。

  技巧:事實上,你會看到框架布局是作為你設計的任何布局資源的父布局來使用的。如果你在層級視圖工具(Hierarchy Viewer tool,一個很有用的調試你的程序布局的工具)創建你的程序,你會發現你設計的任何布局資源都被顯示在一個父布局中——一個框架布局。

  框架布局非常簡單,這使得它們非常高效。它們可以在XML布局資源文件中定義,也可以通過Java代碼在程序中定義??蚣懿季种械囊粋€子視圖總是被繪制到相對于屏幕的左上角上。如果存在多個子視圖,那么他們被按順序一個堆疊在另一個上面的方式繪制。這意味著第一個添加到框架布局的視圖將顯示在棧的底部,最后添加的視圖會顯示在最頂部。

  讓我們來看一個簡單的例子。我們假設有一個框架布局大小調整到控制整個屏幕(換句話說,layout_width and layout_height屬性都設置為match_parent)。我們要添加三個子控件到這個框架布局:

  • 一個有湖面圖片的ImageView。
  • 一個在屏幕頂部顯示的TextView。
  • 一個在屏幕底部顯示的(使用layout_gravity屬性將TextView下沉到父布局的底部)TextView。

  下圖展示這種類型的布局在屏幕上會是什么樣:

  在XML資源文件中定義框架布局

  設計程序用戶界面最方便和可維護的方法是創建XML布局資源。這個方法極大地簡化了UI設計過程,將很多靜態創建和用戶界面控件的布局以及控件屬性的定義移到XML中去,取代了寫代碼。

  XML布局資源必須存儲在/res/layout項目目錄下。讓我們看看前一節介紹的框架布局。同樣地,這個屏幕基本上就是一個有三個子視圖的框架布局:一個充滿整個屏幕的圖片,兩個文本控件繪制在它上面,每一個文本控件都是默認透明背景。這個布局資源文件命名為/res/layout/framed.xml,在XML中如下定義:

<?xml version="1.0" encoding="utf-8"?>
 <FrameLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width
="fill_parent" Android:layout_height="fill_parent">
 
<ImageView Android:id="@+id/ImageView01" Android:layout_height="fill_parent"
Android:layout_width
="fill_parent" Android:src="@drawable/lake"
Android:scaleType
="matrix"></ImageView>
 <TextView Android:layout_width="fill_parent"
Android:layout_height
="wrap_content"
Android:textColor
="#000"
Android:textSize
="40dp"
Android:text
="@string/top_text" />
 
<TextView Android:layout_width="fill_parent"
Android:layout_height
="wrap_content"
Android:text
="@string/bottom_text"
Android:layout_gravity
="bottom" Android:gravity="right"
Android:textColor
="#fff" Android:textSize="50dp" /> </FrameLayout>

it知識庫Android用戶界面設計:框架布局,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 南江县| 白城市| 崇礼县| 桦甸市| 曲沃县| 五华县| 湖南省| 电白县| 城步| 南京市| 封丘县| 博兴县| 如东县| 托克逊县| 农安县| 渝中区| 紫金县| 卓资县| 哈巴河县| 灵璧县| 凉山| 桐庐县| 孝感市| 班戈县| 永康市| 额济纳旗| 博白县| 安岳县| 阿勒泰市| 申扎县| 马尔康县| 乃东县| 怀远县| 车致| 金乡县| 唐海县| 澜沧| 龙胜| 赤城县| 南宁市| 兰坪|