栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Android 实现点击在当前位置上方显示自定义弹框

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android 实现点击在当前位置上方显示自定义弹框

TextView的点击事件
效果图


  • 布局
 
        TextView tv=findViewById(R.id.text);
//        点击事件
        tv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                showPopWindows(view);
            }
        });


//写一个方法
        private void showPopWindows(View v) {
            
            View mPopView = LayoutInflater.from(this).inflate(R.layout.item, null);
            final PopupWindow mPopWindow = new PopupWindow(mPopView, ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT, true);
            
            mPopWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
            
            mPopView.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
            int popupWidth = mPopView.getMeasuredWidth();
            int popupHeight = mPopView.getMeasuredHeight();
            
            int[] location = new int[2];
            v.getLocationOnScreen(location);
            
            mPopWindow.showAtLocation(v, Gravity.NO_GRAVITY, (location[0] + v.getWidth() / 2) - popupWidth / 2, location[1]
                    - popupHeight);
            mPopWindow.update();
            final String copyTxt = (String) v.getTag();
            mPopView.findViewById(R.id.tv_copy_txt).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (mPopWindow != null) {
                        mPopWindow.dismiss();
                    }
                }
            });
    }
  • item布局

android:background="@drawable/aa 自己随便给背景图


    


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/677816.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号