Android開發計算機之布局

來源:互聯網
上載者:User

標籤:android開發   布局   

    學習了一段時間的安卓,現在開始操作一個小例子——計算機。相信我們的手機中都有計算機這個軟體,但是你知道它是怎麼進行具體操作的嗎?其實我暫時也還不知道,現在就簡單的布局來做一個小總結。

    對於一個軟體,漂亮的使用者介面(UI)總能給使用者留下深刻印象,這也是我們聽了介面設計課之後應有的思想。對於Android這樣的手機應用軟體而言,使用者介面更是不可忽略的。在Android中,View是所有可視化控制項的基類,它有五大布局方式:



 

線性布局

線性布局(LinearLayout)是較簡單的一個布局,它提供了控制項水平或者垂直方向的相片順序。

表格布局

表格布局(TableLayout)是按照行列來組織子視圖的布局,包含一系列的TableRow隊形,用於定義行。

相對布局

相對布局(RelativeLayout)是指在容器內部的子項目可以使用彼此之間的相對位置或與容器間的相對位置來進行定位。

幀布局

幀布局(FrameLayout)是五大布局中最簡單的一個布局,在這個布局中,整個介面被當成空白地區,所有子項目都不能都不能指定位置放置,全都放在空白地區的左上方,並且後面的子項目直接覆蓋在前面的子項目上,將前面的子項目部分或全部遮擋。

絕對布局

絕對布局(AbsoluteLayout)是指所有控制項的排列由開發人員通過控制項的座標來指定,容器不負責管理子控制項的位置。


    上面說了Android的五大布局,在進行實際設計的時候,開發人員根據介面的需求選擇相應的布局。此外,五大布局還可以相互的嵌套。下面是設計Android電腦的介面的例子,採用了布局的嵌套。修改

主Activity的布局檔案main.xml,代碼如下:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <TextView        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:text="本案例示範布局的嵌套"         android:textSize="20px"/>        <TextView        android:layout_width="fill_parent"        android:layout_height="50px"        android:textSize="40px"android:gravity="right"        android:background="#fff" />        <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:orientation="horizontal" >                <Button            android:id="@+id/num1"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_alignParentLeft="true"            android:padding="20px"            android:text="1"            android:textSize="20px" />        <Button            android:id="@+id/num2"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num1"            android:padding="20px"            android:text="2"            android:textSize="20px" />        <Button            android:id="@+id/num3"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num2"            android:padding="20px"            android:text="3"            android:textSize="20px" />                <Button            android:id="@+id/back"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num3"            android:padding="20px"            android:text="BACK"            android:textSize="20px" />        <Button            android:id="@+id/add"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/back"            android:padding="20px"            android:text="+"            android:textSize="20px" />            </RelativeLayout>            <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:orientation="horizontal" >                <Button            android:id="@+id/num11"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_below="@id/num1"            android:padding="20px"            android:text="4"            android:textSize="20px" />        <Button            android:id="@+id/num12"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num11"            android:padding="20px"            android:text="5"            android:textSize="20px" />        <Button            android:id="@+id/num13"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num12"            android:padding="20px"            android:text="6"            android:textSize="20px" />                <Button            android:id="@+id/left"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num13"            android:padding="20px"            android:text="("            android:textSize="20px" />        <Button            android:id="@+id/jian"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/left"            android:padding="20px"            android:text="-"            android:textSize="20px" />            </RelativeLayout>                <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:orientation="horizontal" >                <Button            android:id="@+id/num21"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_below="@id/num11"            android:padding="20px"            android:text="7"            android:textSize="20px" />        <Button            android:id="@+id/num22"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num21"            android:padding="20px"            android:text="8"            android:textSize="20px" />        <Button            android:id="@+id/num23"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num22"            android:padding="20px"            android:text="9"            android:textSize="20px" />                <Button            android:id="@+id/right"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num23"            android:padding="20px"            android:text=")"            android:textSize="20px" />        <Button            android:id="@+id/chen"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/right"            android:padding="20px"            android:text="*"            android:textSize="20px" />            </RelativeLayout>    <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:orientation="horizontal" >                <Button            android:id="@+id/num31"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_below="@id/num21"            android:padding="20px"            android:text="0"            android:textSize="20px" />        <Button            android:id="@+id/num32"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num31"            android:padding="20px"            android:text="CE"            android:textSize="20px" />        <Button            android:id="@+id/num33"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num32"            android:padding="20px"            android:text="."            android:textSize="20px" />                <Button            android:id="@+id/equal"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/num33"            android:padding="20px"            android:text="="            android:textSize="20px" />        <Button            android:id="@+id/gang"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_toRightOf="@id/equal"            android:padding="20px"            android:text="/"            android:textSize="20px" />            </RelativeLayout></LinearLayout>

如下:





Android開發計算機之布局

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.