自定义的界面底部向上弹出的PopupWindow

原创 2016年08月31日 10:26:16

public class BottomPopWin extends PopupWindow {

  private final TextView tvTotaDoneNums;
  private final GridView gvSelectNum;
  private View view;

  public BottomPopWin(Activity cx) {
    DisplayMetrics dm = new DisplayMetrics();
    cx.getWindowManager().getDefaultDisplay().getMetrics(dm);
    Rect rect = new Rect();
    cx.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
    int top = rect.top;
    View v = cx.getWindow().findViewById(Window.ID_ANDROID_CONTENT);
    int top2 = v.getTop();
    this.view = LayoutInflater.from(cx).inflate(R.layout.bootomdialog, null);
    tvTotaDoneNums = (TextView) view.findViewById(R.id.tv_dialog_btm_num_done);
    gvSelectNum = (GridView) view.findViewById(R.id.gv_nums);
    this.setOutsideTouchable(true);
    this.view.setOnTouchListener(new View.OnTouchListener() {

      public boolean onTouch(View v, MotionEvent event) {
        int height = view.findViewById(R.id.ll_dialog_btm_content).getTop();
        int y = (int) event.getY();
        if (event.getAction() == MotionEvent.ACTION_UP) {
          if (y < height) {
            dismiss();
          }
        }
        return true;
      }
    });
    this.setContentView(this.view);
    this.setHeight(LinearLayout.LayoutParams.MATCH_PARENT);
    this.setWidth(LinearLayout.LayoutParams.MATCH_PARENT);
    this.setFocusable(true);
    ColorDrawable dw = new ColorDrawable(0x50000000);
    this.setBackgroundDrawable(dw);
    this.setAnimationStyle(R.style.pop_anim);
  }

  public GridView getGridView(){
    return gvSelectNum;
  }

  public void setTotalDoneNum(String num){
    if (tvTotaDoneNums!=null){}
    tvTotaDoneNums.setText(num);
  }

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

使用PopupWindow由下向上弹出自定义窗口

PopupWindow pop = new PopupWindow(view, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutPar...
  • An_Illusion
  • An_Illusion
  • 2016年05月13日 17:49
  • 2444

自定义PopupWindow轻松实现从底部弹出

首先,肯定要有动画资源吧,要不怎么弹嘞。啥都不管,先定义两个动画肯定用的着。 ...
  • LB_fighting
  • LB_fighting
  • 2016年04月28日 18:20
  • 9823

PopupWindow底部弹出

说明:从屏幕底部弹出PopupWindow,有弹出隐藏动画效果.背景设置透明度. 效果图如下: 1.MainActivity.java   显示popwindow,宽高跟屏幕大小一样,设置...
  • lowprofile_coding
  • lowprofile_coding
  • 2015年08月19日 19:28
  • 2684

Android Animation实战之屏幕底部弹出PopupWindow

原文链接(建议跳转):Android Animation实战之屏幕底部弹出PopupWindow 我们仿写一个这种效果的实例吧: 1、我们首先定义一下,弹出窗口的页面布局组件:take_photo_...
  • u010495996
  • u010495996
  • 2016年07月18日 23:27
  • 17482

自定义PopupWindow实现底部弹出式菜单

现在很多应用都采用底部弹出式菜单,觉得挺好看的,先上图 底部弹出菜单通过自定义PopupWindow实现,很简单的一个自定义 1.自定义PopupWindow代码:public class M...
  • qq_30124547
  • qq_30124547
  • 2016年07月13日 16:15
  • 1424

PopupWindow实现屏幕底部弹出

1 实现原理: 1)通过style实现弹出与消失的动画 2)Window实现背景在弹框显示消失时的明暗效果 3)showAtLocation控制弹框位置 2 代码 1、 Ma...
  • baopengjian
  • baopengjian
  • 2017年12月25日 11:15
  • 161

页面从底部弹出一个popWindow

//下面我们给大家提供一个代码 就是现在很多的应用都是从底部弹出一个框 我们下面就给大家展示 首先我们看一下效果首先我们需要的是准备工作 从下面进退肯定是动画 我们在res下面创建...
  • Mannver
  • Mannver
  • 2016年05月13日 22:02
  • 9025

从屏幕底部弹出PopupWindow

最近因为要用到PopupWindow,所以,就在网上搜索了一下,发现挺多关于这样的文章,现在我把它们整理了一下。   1、Android PopupWindow 的使用技巧,http://www.c...
  • yxhuang2008
  • yxhuang2008
  • 2015年01月11日 21:59
  • 17212

Android底部虚拟按键遮挡popwindow问题

对于一些三星、华为手机 绝大多数都是虚拟按键 会出现遮挡问题: 一行代码解决问题: //防止被底部虚拟键挡住 pop.setSoftInputMode(WindowManager....
  • a34927341
  • a34927341
  • 2018年01月25日 16:44
  • 38

Android Animation动画实战(二):从屏幕底部弹出PopupWindow

Android使用PopupWindow来实现从屏幕底部滑动弹出页面, 相信这种效果大家在很多APP上都遇到过,比如需要拍照或者从SD卡选择图片,再比如需要分享某些东西时,大多会采用这么一种效果....
  • zuiwuyuan
  • zuiwuyuan
  • 2015年09月03日 10:00
  • 5449
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自定义的界面底部向上弹出的PopupWindow
举报原因:
原因补充:

(最多只允许输入30个字)