Android对话框

it2022-05-09  40

Android对话框 Dialog,其直接子类 AlertDialog. AlertDialog的直接子类: DatePickerDialog、TimePickerDialog、ProgressDialog

对话框和菜单一样,都是由Activity统一管理的,我们只需要重新实现onCreateDialog(int id)回调方法,根据showDialog(int id)传进来的不同对话框id,初始化并返回相应的对话框。

下面举一个功能简单的例子来说明 对话框的使用。

 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent" >

    <TextView     android:id="@+id/textview"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_centerHorizontal="true"        android:layout_centerVertical="true"        android:text="@string/hello_world"        tools:context=".MainActivity" />

</RelativeLayout>

布局中仅仅引入一个TextView;

package com.example.dialog1;

import android.os.Bundle;import android.app.Activity;import android.app.AlertDialog;import android.app.Dialog;import android.content.DialogInterface;import android.content.DialogInterface.OnClickListener;import android.view.Menu;import android.widget.TextView;

public class MainActivity extends Activity {

 final int DIALOG_WELCOME=1;     @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        showDialog(DIALOG_WELCOME);    }   

           //初始化对话框,其参数id 为showDialog(DIALOG_WELCOME)传入。    protected Dialog onCreateDialog(int id){          switch(id){          case DIALOG_WELCOME:      

         //AlertDialog.Builder为静态类,使用它是因为 AlertDialog.Builder提供了一些更为方便的初始化对话框的方法      AlertDialog.Builder builder=new AlertDialog.Builder(this);

        //setIcon 设置标题图标      builder.setIcon(android.R.drawable.ic_dialog_info);      builder.setTitle("欢迎");      builder.setMessage("欢迎使用本程序!");

        //setPositiveButton设置对话框底部的按钮,这里传入一个监听器处理按钮单击事件。      return builder.setPositiveButton("确定",new OnClickListener(){              public void onClick(DialogInterface a0,int a1){                TextView tv=(TextView)findViewById(R.id.textview);        tv.setText("欢迎使用对话框:OK!");       }             }).create();                        default:       return null;          }                   }   

}

 

 

转载于:https://www.cnblogs.com/welsh-android-learning/archive/2012/08/09/2630777.html

相关资源:Android 对话框(Dialog)样式大全以及简单实现

最新回复(0)