Android 彈出對話框Dialog

android彈出對話框形式不一,現在簡單整理一下,做個記錄,方便以後查閱。

Dialog01Activity.java

package Rw.Dialog;
 
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
 
public class Dialog01Activity extends Activity {
  
    private Button button1,button2,button3,button4,button6,button7;
    ProgressDialog progressDialog=null;
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        button1=(Button)findViewById(R.id.button1);
        button2=(Button)findViewById(R.id.button2);
        button3=(Button)findViewById(R.id.button3);
        button4=(Button)findViewById(R.id.button4);
        button6=(Button)findViewById(R.id.button6);
        button7=(Button)findViewById(R.id.button7);
   
        button1.setOnClickListener(new ButtonListener());
        button2.setOnClickListener(new ButtonListener());
        button3.setOnClickListener(new ButtonListener());
        button4.setOnClickListener(new ButtonListener());
        button6.setOnClickListener(new ButtonListener());
        button7.setOnClickListener(new ButtonListener());
    }
    
    class ButtonListener implements OnClickListener{
 
        @Override
        public void onClick(View v) {
             final String[] itemStrings={"AA","BB","CC","DD"};
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.button1:
                 AlertDialog.Builder dialog=new AlertDialog.Builder(Dialog01Activity.this);
                   dialog.setTitle("Dialog").setIcon(android.R.drawable.ic_dialog_info).setMessage("彈出框").setPositiveButton("確定"new DialogInterface.OnClickListener() {
                     
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        //轉跳到另外一個Activity
                        // TODO Auto-generated method stub
                        Intent intent=new Intent();
                        intent.setClass(getApplicationContext(), list.class);
                        startActivity(intent);
                    }
                }).setNegativeButton("取消"new DialogInterface.OnClickListener() {
                     
                     
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                        dialog.cancel();//取消彈出框
                    }
                }).create().show();
                break;
            case R.id.button2:
                 
                AlertDialog.Builder builder=new AlertDialog.Builder(Dialog01Activity.this);
                builder.setTitle("LIST").setIcon(android.R.drawable.ic_lock_lock).setItems(itemStrings, new DialogInterface.OnClickListener() {
                     
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                    Toast.makeText(getApplicationContext(), "你點擊的是"+itemStrings[which], Toast.LENGTH_LONG).show(); 
                    }
                }).create().show();
                break;
            case R.id.button3:
                 
                AlertDialog.Builder builder1=new AlertDialog.Builder(Dialog01Activity.this);
                builder1.setTitle("LIST").setIcon(android.R.drawable.ic_lock_lock).setSingleChoiceItems(itemStrings,-1new DialogInterface.OnClickListener() {
                     
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                    Toast.makeText(getApplicationContext(), "你點擊的是"+itemStrings[which], Toast.LENGTH_LONG).show(); 
                     
                    }
                }).create().show();
                builder1.setCancelable(true);
                break;
                case R.id.button4:
                    progressDialog=ProgressDialog.show(Dialog01Activity.this"下載""下載中.....",true);
                    progressDialog.setCancelable(true);//當點擊按鈕返回的時候Dialog消失
                    //progressDialog.dismiss();
                    break;
                     
                case R.id.button6:
                    LayoutInflater inflater=(LayoutInflater)getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE);
                    View view=inflater.inflate(R.layout.style, null);
                    AlertDialog.Builder builder2=new AlertDialog.Builder(Dialog01Activity.this);
                    builder2.setView(view);
                    builder2.setTitle("QQ2011").setPositiveButton("確定"new DialogInterface.OnClickListener() {
                         
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            // TODO Auto-generated method stub
                            dialog.cancel();
                        }
                    }).create().show();
                    
                    break;
                case R.id.button7:
                    Dialog01Activity.this.finish();
                        break;
            default:
                break;
            }
        }
         
    }
}
main.xml佈局
?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?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"
    android:weightSum="1">
<Button android:id="@+id/button1" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="簡單彈出框"></Button>
<Button android:id="@+id/button2" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="帶有列表風格"></Button>
<Button android:id="@+id/button3" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="帶有Radio"></Button>
<Button android:id="@+id/button4" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="進度條"></Button>
<Button android:id="@+id/button6" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="自定義的"></Button>
<Button android:id="@+id/button7" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="退出"></Button>
</LinearLayout>
自定義的Dialog風格 style.xml
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent" android:weightSum="1">
    <ImageView android:layout_height="wrap_content" android:src="@drawable/logo" android:id="@+id/imageView1" android:layout_width="fill_parent"></ImageView>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
    <TextView android:text="賬號:" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    <EditText android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:id="@+id/editText1">
        <requestFocus></requestFocus>
    </EditText>
 
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
    <TextView android:text="密碼:" android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    <EditText android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:id="@+id/editText2" android:inputType="textPassword"></EditText>
 
</LinearLayout>
    </LinearLayout>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章