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); } }?
?
?
