当前位置:首页 > Android > 正文内容

Android PopupWindow的基本使用

7个月前 (03-19)Android

需求:希望点击文本区域的时候,在手指处添加一个控件,开始想到的是相对布局,添加一个隐藏层,根据点击然后显示并且重设坐标,后来发现这个方向是错的,甚至有点蠢,后来看到了popupWindow。

PopupWindow popupWindow = new PopupWindow(MainActivity.this);

//设置宽高
popupWindow.setWidth(300);
popupWindow.setHeight(150);
// 获取布局
popupWindow.setContentView(LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_item01, null));
// 点击区域外使对话框消失
popupWindow.setOutsideTouchable(false);
popupWindow.setFocusable(true);
popupWindow.setTouchable(true);
popupWindow.setBackgroundDrawable(new ColorDrawable(Color.WHITE));

// 获取控件位置
int[] lv2 = {0, 0};
tv.getLocationInWindow(lv2);
// 设置弹窗位置
popupWindow.showAtLocation(tv, Gravity.TOP | Gravity.LEFT, x+lv2[0], y+lv2[1]);

以上方法初始化设置的固定宽高可能有问题,以后用下面这个

View contentView = LayoutInflater.from(MainActivity.this).inflate(R.layout.popuplayout, null);
mPopWindow = new PopupWindow(contentView,
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true);


扫描二维码推送至手机访问。

版权声明:本文由小祥子的博客发布,如需转载请注明出处。

本文地址:http://www.xiaoxiangzi.com/post/96.html

相关文章

Android常用第三方框架

分类二级分类框架名称简介UI刷新SmartRefreshLayout智能下拉刷新框架UI刷新Android-PullToRefresh比较早的一款下拉刷新框架UI刷新android-Ultra-Pul...

Android根据关键词标红部分文字

            String mKeyWord =&...

Android SharedPreferences的简单使用

Android的SharedPreferences与iOS的UserDefaults.standard十分相同,都是是保存一些轻量配置数据的地方。这里假设保存用户名SharedPreferences&...

安卓 获取TextView手指点击所在位置的文字

TextView tv;     public final static String HTML_TEX...

Android 网络请求后的JSON解析

JSON解析用阿里巴巴的fastjson。implementation 'com.alibaba:fastjson:1.1.71.android' 根据上一篇文章,登录接口登...

Android Intent界面之间的跳转

当前页面跳转到NextActivity页面Intent intent = new Intent(this,NextActivity.class) this.s...