关于使用PopupWindow

PopupWindow 可以创建类似于对话框风格的窗口,使用PopupWindow创建对话框只需两个步骤

1)调用PopupWindow构造器创建PopupWindow对象

2)调用PopupWindow的showAsDropDown(View v)将PopupWindow作为v的下拉显示对象,或者调用PopupWindow的showAtLocation()来显示PopupWindow的位置

以下为一个简单的代码实例:

public class PopupWindowTest extends Activity
{
   @Override
   public void onCreate(Bundle savedInstanceState)
   {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       // 装载R.layout.popup对应的界面布局
       View root = this.getLayoutInflater().inflate(R.layout.popup, null);
       // 创建PopupWindow对象
       final PopupWindow popup = new PopupWindow(root, 280, 360);
       Button button = (Button) findViewById(R.id.bn);
       button.setOnClickListener(new OnClickListener()
       {
           @Override
           public void onClick(View v)
           {
               // 以下拉方式显示。
//                popup.showAsDropDown(v);
               //将PopupWindow显示在指定位置
               popup.showAtLocation(findViewById(R.id.bn), Gravity.CENTER, 20,
                   20);
           }
       });
       // 获取Popup窗口中的关闭按钮。
       root.findViewById(R.id.close).setOnClickListener(
           new View.OnClickListener()
           {
               public void onClick(View v)
               {
                   // 关闭Popup窗口
                   popup.dismiss();
               }
           });
   }
}