iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 13
0
Mobile Development

Android Studio入門教學&筆記系列 第 13

Android-一般對話框(Dialog)

  • 分享至 

  • xImage
  •  

-Dialog(對話框)-

我剛開始在學習Dialog的時候網路上查詢到的資料大多都是AlertDilog,但我比較想做出客製化的樣子,所以就先學習這種一般的對話框,可以加入自己想要的按鈕、元件。首先,為dialog創立一個xml檔布置你想要的對話框

<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="300dp"
    android:orientation="vertical">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_marginTop="25dp"
        android:text="會員登入"
        android:textSize="25dp"
        android:textColor="#ffffff"/>

    <EditText
        android:layout_width="300dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:layout_marginTop="30dp"
        android:hint="帳號"
        android:textSize="15dp"/>

    <EditText
        android:layout_width="300dp"
        android:layout_height="50dp"
        android:maxLength="10"
        android:layout_gravity="center"
        android:hint="密碼"
        android:textSize="15dp" />
    <LinearLayout
        android:layout_width="400dp"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_marginTop="30dp"
        android:layout_gravity="center">
        <Button
            android:onClick="cancel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="取消"
            android:layout_weight="1"/>
        <Button
            android:onClick="login"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="登入"
            android:layout_weight="1"/>
    </LinearLayout>

</LinearLayout>

這是一個基本的對話框,有輸入框和按鈕

接著在主程式MainActivity加入以下程式碼

 Dialog dialog = new Dialog(this);
        dialog.setContentView(R.layout.dialog1);   //dialog1是我上面建立xml的檔名
        dialog.show(); //顯示對話框

若想在對話框內的按鈕新增功能,就能像我前面幾篇的方式寫入點擊事件做一些功能應用

  public void cancel(View v){
        dialog.cancel();
    }
    public void login(View v){
        Toast.makeText(this, "登入成功", Toast.LENGTH_SHORT).show();
        dialog.dismiss();
    }

上一篇
Android-元件介紹(button) - 外觀設計
下一篇
Android-設計外觀(Dialog)
系列文
Android Studio入門教學&筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言