Android開發之線性布局

來源:互聯網
上載者:User

一、基礎知識:

   id="@+id/edtInput",ID 是串連UI 與代碼的橋樑

  layout_width="fill_parent" ,自動填滿至螢幕寬度

  layout_width="wrap_content" ,自動填滿為控制項大小

 

  在LinearLayout 裡面的控制項,按照水平或者垂直排列:

   orientation="horizontal" :水平排列;

   orientation=" vertical" :垂直排列

 

  使用android:layout_weight指定百分比(權值)。

  在LinearLayout嵌套的情況下,子LinearLayout必須要設定權值,否則預設的情況是未設定權值的子LinearLayout佔據整個螢幕。

 

android:id  —— 為控制項指定相應的ID

android:text —— 指定控制項當中顯示的文字,需要注意的是,這裡盡量使用strings.xml檔案當中的字串

android:grivity —— 指定控制項的基本位置,比如說置中,居右等位置

android:textSize —— 指定控制項當中字型的大小

android:background —— 指定該控制項所使用的背景色,RGB命名法

android:width —— 指定控制項的寬度

android:height —— 指定控制項的高度

android:padding* —— 指定控制項的內邊距,也就是說控制項當中的內容

android:sigleLine —— 如果設定為真的話,則將控制項的內容在同一行當中進行顯示

 

二、代碼展示:

1."Acticity_05srcyanacticity_05MainActivity.java"

[java]

package yan.acticity_05; 

 

import android.os.Bundle; 

import android.app.Activity; 

import android.view.Menu; 

 

public class MainActivity extends Activity { 

 

    @Override 

    protected void onCreate(Bundle savedInstanceState) { 

        super.onCreate(savedInstanceState); 

        setContentView(R.layout.activity_main); 

    } 

 

    @Override 

    public boolean onCreateOptionsMenu(Menu menu) { 

        // Inflate the menu; this adds items to the action bar if it is present.  

        getMenuInflater().inflate(R.menu.activity_main, menu); 

        return true; 

    } 

 

package yan.acticity_05;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

public class MainActivity extends Activity {

 @Override

 protected void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);

  setContentView(R.layout.activity_main);

 }

 @Override

 public boolean onCreateOptionsMenu(Menu menu) {

  // Inflate the menu; this adds items to the action bar if it is present.

  getMenuInflater().inflate(R.menu.activity_main, menu);

  return true;

 }

}

 

2.“Acticity_05reslayoutactivity_main.xml”

[html]

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 

    android:orientation="vertical" 

    android:layout_width="fill_parent" 

    android:layout_height="fill_parent" 

    > 

<!--   

        代碼編輯提示快速鍵:  Alt+/ 

 

        id="@+id/edtInput",ID 是串連UI 與代碼的橋樑 

        layout_width="fill_parent" ,自動填滿至螢幕寬度 

        layout_width="wrap_content" ,自動填滿為控制項大小 

         

        在LinearLayout 裡面的控制項,按照水平或者垂直排列: 

            orientation="horizontal" :水平排列; 

            orientation=" vertical" :垂直排列 

             

        android:id  —— 為控制項指定相應的ID 

        android:text —— 指定控制項當中顯示的文字,需要注意的是,這裡盡量使用strings.xml檔案當中的字串 

        android:grivity —— 指定控制項的基本位置,比如說置中,居右等位置 

        android:textSize —— 指定控制項當中字型的大小 

        android:background —— 指定該控制項所使用的背景色,RGB命名法  

        android:width —— 指定控制項的寬度 

        android:height —— 指定控制項的高度 

        android:padding* —— 指定控制項的內邊距,也就是說控制項當中的內容 

        android:sigleLine —— 如果設定為真的話,則將控制項的內容在同一行當中進行顯示 

                         

--> 

   <EditText 

       android:id="@+id/edtInput" 

       android:layout_width="fill_parent" 

       android:layout_height="wrap_content" 

       android:text="@+string/hello_world" 

       /> 

 

    <Button 

        android:id="@+id/myButton" 

        android:layout_width="fill_parent" 

        android:layout_height="wrap_content" 

        /> 

 

    <TextView 

        android:id="@+id/firstText" 

        android:text="TextView第一行" 

        android:gravity="center_vertical" 

        android:textSize="15pt" 

        android:background="#aa0000" 

        android:layout_width="fill_parent" 

        android:layout_height="wrap_content" 

        android:layout_weight="10000" 

        android:singleLine="true"/> 

    <TextView 

        android:id="@+id/secondText" 

        android:text="TextView第二行" 

        android:gravity="center_vertical" 

        android:textSize="15pt" 

        android:background="#0000aa" 

        android:layout_width="fill_parent" 

        android:layout_height="wrap_content" 

        android:layout_weight="1"/> 

     

</LinearLayout> 

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

 android:orientation="vertical"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    >

<!-- 

  代碼編輯提示快速鍵: Alt+/

  id="@+id/edtInput",ID 是串連UI 與代碼的橋樑

  layout_width="fill_parent" ,自動填滿至螢幕寬度

  layout_width="wrap_content" ,自動填滿為控制項大小

  

  在LinearLayout 裡面的控制項,按照水平或者垂直排列:

   orientation="horizontal" :水平排列;

   orientation=" vertical" :垂直排列

   

  android:id  —— 為控制項指定相應的ID

  android:text —— 指定控制項當中顯示的文字,需要注意的是,這裡盡量使用strings.xml檔案當中的字串

  android:grivity —— 指定控制項的基本位置,比如說置中,居右等位置

  android:textSize —— 指定控制項當中字型的大小

  android:background —— 指定該控制項所使用的背景色,RGB命名法

  android:width —— 指定控制項的寬度

  android:height —— 指定控制項的高度

  android:padding* —— 指定控制項的內邊距,也就是說控制項當中的內容

  android:sigleLine —— 如果設定為真的話,則將控制項的內容在同一行當中進行顯示

      

-->

   <EditText

       android:id="@+id/edtInput"

       android:layout_width="fill_parent"

       android:layout_height="wrap_content"

       android:text="@+string/hello_world"

       />

    <Button

        android:id="@+id/myButton"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        />

    <TextView

  android:id="@+id/firstText"

  android:text="TextView第一行"

  android:gravity="center_vertical"

  android:textSize="15pt"

  android:background="#aa0000"

  android:layout_width="fill_parent"

  android:layout_height="wrap_content"

  android:layout_weight="10000"

        android:singleLine="true"/>

 <TextView

  android:id="@+id/secondText"

  android:text="TextView第二行"

  android:gravity="center_vertical"

  android:textSize="15pt"

  android:background="#0000aa"

  android:layout_width="fill_parent"

  android:layout_height="wrap_content"

  android:layout_weight="1"/>

   

</LinearLayout>

 

三、效果展示:

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.