Android游戏开发系统控件-Dialog
Dialog(对话框)在Android应用开发中经常用到,下面是学习《Android游戏编程从零开始》一书,关于Dialog的初步学习。
创建项目:DialogProject
作者:wwj
日期:2012/5/13
功能:显示有TextView和按钮的对话框
简单对话框:
添加单选框的对话框:
添加多选框的对话框:
添加列表的对话框:
添加自定义布局的对话框:
项目源代码:
=>>main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="@string/hello" /></LinearLayout>
=>>dialogmain.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_height="wrap_content"android:layout_width="wrap_content"android:background="#ffffffff" android:orientation="horizontal"android:id="@+id/myLayout"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="TextView"/><EditText android:layout_width="wrap_content"android:layout_height="wrap_content"/><Button android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="btn1"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="btn2"/>
</LinearLayout>
=>>DialogProjectActivity.java
package com.dialog;import android.app.Activity;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;public class DialogProjectActivity extends Activity {private Builder builder; //声明Bulider对象/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);//实例化Builder对象builder = new Builder(DialogProjectActivity.this);//设置对话框的图标builder.setIcon(android.R.drawable.ic_dialog_info);//设置对话框的标题builder.setTitle("Dialog");//设置对话框提示文本// builder.setMessage("Dialog对话框");//监听左侧按钮builder.setPositiveButton("Yes", new OnClickListener(){public void onClick(DialogInterface dialog,int which){}});//监听右侧按钮builder.setNegativeButton("No",new OnClickListener(){public void onClick(DialogInterface dialog,int which){}});/*//添加单选按钮builder.setSingleChoiceItems(new String[]{"单选","单选"},1,newOnClickListener(){public void onClick(DialogInterface dialog,int which){//which:选中下标}});//添加复选框builder.setMultiChoiceItems(new String[]{"多选","多选"},new boolean[]{false, true},new OnMultiChoiceClickListener(){public void onClick(DialogInterface dialog,int which,boolean isChecked){//which:选中下标//isChecked:选中项的勾选状态}});//添加列表项builder.setItems(new String[]{"列表项1","列表项2","列表项3"},new OnClickListener(){public void onClick(DialogInterface dialog,int which){//which:选中下标项}});*///实例layout布局LayoutInflater inflater = getLayoutInflater();View layout = inflater.inflate(R.layout.dialogmain, (ViewGroup)findViewById(R.id.myLayout));builder.setView(layout);//调用show()方法显示对话框builder.show();}
}