1 public void PopupWindow(View parent){ 2 View contentView = View.inflate(context,R.layout.popup_item, null); 3 //先把之前的销毁 4 dismissPopupWindow(); 5 6 //-2表示包裹内容 7 popupwindow = new PopupWindow(contentView, -2, -2); 8 // 动画播放有一个前提条件: 窗体必须要有背景资源。 如果窗体没有背景,动画就播放不出来。 9 popupwindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); 10 int[] location = new int[2]; 11 view.getLocationInWindow(location); 12 popupwindow.showAtLocation(parent, Gravity.LEFT + Gravity.TOP, 60, location[1]); 13 14 ScaleAnimation sa = new ScaleAnimation(0.5f, 1.0f, 0.5f, 1.0f, Animation.RELATIVE_TO_SELF, 0, 15 Animation.RELATIVE_TO_SELF, 0.5f); 16 sa.setDuration(200); 17 AlphaAnimation aa = new AlphaAnimation(0.5f, 1.0f); 18 aa.setDuration(200); 19 AnimationSet set = new AnimationSet(false); 20 set.addAnimation(aa); 21 set.addAnimation(sa); 22 contentView.startAnimation(set); 23 }
显示popupwindow
1 private void dismissPopupWindow() { 2 if (popupwindow != null && popupwindow.isShowing()) { 3 popupwindow.dismiss(); 4 popupwindow = null; 5 } 6 }
关闭popupWindow
时间: 2024-10-12 12:30:16