1. 程式人生 > >Android 中的UI設計

Android 中的UI設計

Android中有幾種常用的空間,比如,TextView,Button,EditText,ImageView,ProgressBar,AlertDialog,ProgressDialog

下面我們一一介紹:

TextView

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tv1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#00ff00"
        android:gravity="center"
        android:text="this is a view"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</LinearLayout>

android:layout_width:指定控制元件的寬度

android:layout_width:指定控制元件的高度

他們的選項有matct_parent,fill_parent,wrap_content

matct_parent:,fill_parent含義是一樣的,推薦使用matct_parent,都是表示當前的控制元件的大小和父佈局的大小一樣。

wrap_content:表示當前的控制元件的大小能夠剛好包含裡面的內容。

android:textSize="24sp"這個是設定文字的字型大小的
android:textColor="#00ff00"這個是設定文字顏色的
android:gravity="center"這個是設定文字的位置的

還有其他的屬性,大家可以自己查一查,這裡就不一一列舉了。

Button:

<Button
        android:id="@+id/btn1"
        android:text="this is a button"
        android:textAllCaps="false"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
android:textAllCaps="false"這句話意思是,我們的android系統預設會把我們的按鈕上的字元給去全部大寫。所以我們給他一個false。

EditText

<EditText
        android:id="@+id/et1"
        android:hint="我們會有提示,還沒有輸入的時候"
        android:maxLines="2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
android:hint="我們會有提示,還沒有輸入的時候"//我們希望在我們沒輸入東西的時候在輸入框裡會有提示資訊。
android:maxLines="2"我們的輸入框中最多輸入兩行,如果在多的話,就會網上滾動。

 ImageView

<ImageView
        android:id="@+id/im1"
        android:src="@drawable/ming"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
android:src="@drawable/ming"//自定我們圖片的資源位子,我們一般吧圖片放在drawable資料夾下。

ProgressBar:

<ProgressBar
        android:id="@+id/pb1"
        style="?android:attr/progressBarStyleHorizontal"
        android:max="500"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
style="?android:attr/progressBarStyleHorizontal"//長條形的進度,預設的是圓形
android:max="500"//設定進度條的大小

AlertDialog:可以在當前你的頁面彈出一個對話方塊,這個對話方塊是置頂在所有的頁面元素之上的,能夠遮蔽掉其他控制元件的互動能力。

 AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
                        dialog.setTitle("This is a dialog");
                        dialog.setMessage("Something importance");
                        dialog.setCancelable(false);
                        dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {

                            }
                        });
                        dialog.setNegativeButton("Cancle", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {

                            }
                        });
                        dialog.show();

首先通過AlertDialog.Builder建立一個AlertDialog物件例項,然後可以為這個對話方塊設定標題,內容,可否取消等屬性,接下來呼叫setPositiveButton()方法設定取消確定按鈕的事件,同理,最後呼叫show()方法來新式出來。