Android PopupWindow弹出对话框的兑现

Android PopupWindow弹出对话框的实现package com.easyway.ui.popupWindowimport android.app.Activityi

Android PopupWindow弹出对话框的实现

package com.easyway.ui.popupWindow;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.PopupWindow;/** * PopupWindow弹出对话框的实现 *  *      //获取布局管理对象 *        LayoutInflater inflater = (LayoutInflater)    *                context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);    *             //获取相关的自定义布局视图 *         final View vPopupWindow=inflater.inflate(R.layout.popupwindow, null, false); *         //PopupWindow的对话框的弹出 *            final PopupWindow pw= new PopupWindow(vPopupWindow,300,300,true); *         *         *         *                //显示popupWindow对话框            pw.showAtLocation(parent, Gravity.CENTER, 0, 0); * @author longgangbai * */public class AndroidPopupWindowActivity extends Activity {        Button btnPopupWindow;            /** Called when the activity is first created. */            @Override            public void onCreate(Bundle savedInstanceState) {                super.onCreate(savedInstanceState);                setContentView(R.layout.main);                //定义按钮                btnPopupWindow=(Button)this.findViewById(R.id.Button01);                btnPopupWindow.setOnClickListener(new ClickEvent());            }                                    //统一处理按键事件            class ClickEvent implements OnClickListener{            @Override            public void onClick(View v) {            // TODO Auto-generated method stub            if(v==btnPopupWindow)            {            showPopupWindow(AndroidPopupWindowActivity.this,            AndroidPopupWindowActivity.this.findViewById(R.id.Button01));            }            }            }            /**             * 显示相关的PopupWindow对话框             * @param context             * @param parent             */        public void showPopupWindow(Context context,View parent){        //获取布局管理对象        LayoutInflater inflater = (LayoutInflater)                  context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);               //获取相关的自定义布局视图        final View vPopupWindow=inflater.inflate(R.layout.popupwindow, null, false);        //PopupWindow的对话框的弹出            final PopupWindow pw= new PopupWindow(vPopupWindow,300,300,true);            //OK按钮及其处理事件                Button btnOK=(Button)vPopupWindow.findViewById(R.id.BtnOK);                btnOK.setOnClickListener(new OnClickListener(){        @Override        public void onClick(View v) {        //设置文本框内容            EditText edtUsername=(EditText)vPopupWindow.findViewById(R.id.username_edit);            edtUsername.setText("username");            EditText edtPassword=(EditText)vPopupWindow.findViewById(R.id.password_edit);            edtPassword.setText("password");        }                });                              //Cancel按钮及其处理事件                Button btnCancel=(Button)vPopupWindow.findViewById(R.id.BtnCancel);                btnCancel.setOnClickListener(new OnClickListener(){        @Override        public void onClick(View v) {        pw.dismiss();//关闭        }                });                //显示popupWindow对话框            pw.showAtLocation(parent, Gravity.CENTER, 0, 0);        }                }

?

?

?