首页
学习
活动
专区
圈层
工具
发布

Android PopupWindow怎么合理控制弹出位置(showAtLocation)

,所以需要我们自己计算位置。...如下图所示,我们可以根据屏幕左上角的坐标A,屏幕高宽,点击View的左上角的坐标C,点击View的大小以及PopupWindow布局的大小计算出PopupWindow的显示位置B ?...计算方法源码如下: /** * 计算出来的位置,y方向就在anchorView的上面和下面对齐显示,x方向就是与屏幕右边对齐显示 * 如果anchorView的位置有变化,就可以适当自己额外加入偏移来修正...final int windowPos[] = new int[2]; final int anchorLoc[] = new int[2];      // 获取锚点View在屏幕上的左上角坐标位置...,在中间的情况,可以根据实际需求写一个弹出位置能够自适应的PopupWindow。

3.3K110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    css继承样式怎么控制?用选择器

    css样式继承性是指下级的样式属性会继承上级的属性,通俗点讲是儿子来继承父亲的属性,比如li会继承ul的属性。...css继承原理是我们设置上级(父级)的CSS样式,上级(父级)及以下的子级(下级)都具有此属性。 ?   哪些css样式属性是可以继承的?...list-style-image, list-style-position,list-style-type, list-style   相关阅读(w3school中的专业术语) CSS 派生选择器:通过依据元素在其位置的上下文关系来定义样式...div.sidebar {background:blue;} div.sidebar a:link {color:white;} div.maincontent {background:white;}...div.maincontent a:link {color:blue;}   有关后代选择器有一个易被忽视的方面,即两个元素之间的层次间隔可以是无限的。

    2.1K50

    CSS 是怎么控制空格的?来了解一下吧!

    转载来源 博客:阮一峰的网络日志 “ 阅读本文大概需要 5 分钟。 ” 一、空格规则 HTML 代码的空格通常会被浏览器忽略。...hello world 可以看到,文字的前部和后部的空格都会忽略,内部的连续空格只会算作一个。这就是浏览器处理空格的基本规则。 如果希望空格原样输出,可以使用标签。...除了普通的空格键,还包括制表符(\t)和换行符(\r和\n)。 浏览器会自动把这些符号转成普通的空格键。...三、CSS 的 white-space 属性 HTML 语言的空格处理,基本上就是直接过滤。这样的处理过于粗糙,完全忽视了原始文本内部的空格可能是有意义的。...CSS 提供了一个white-space属性,可以提供更精确一点的空格处理方式。该属性共有六个值,除了一个通用的inherit(继承父元素),下面依次介绍剩下的五个值。

    1.7K30

    DIV+CSS布局和TABLE布局的优缺点

    HTML5学堂:TABLE布局是早以前CSS不存在的时候兴起的,是对TABLE标签的不正规使用,Table标签就是表格,是用来显示数据的,而不是用来布局网页的,虽然它有时候布局网页很简单。...现在绝大多数的网站都是用DIV+CSS布局。这两种布局各有各的优点。 一.div+css布局的好处: 1.符合W3C标准,代码结构清晰明了,结构、样式和行为分离,带来足够好的可维护性。...3.加快了页面的加载速度(最重要的)(在IE中要将整个table加载完了才显示内容)。 4.节约站点所占的空间和站点的流量。...5.用只包含结构化内容的HTML代替嵌套的标签,提高另外搜索引擎对网页的搜索效率。 二.table布局的好处(table布局也不是一点用的没有,这点是毋庸置疑的) 1.容易上手。...2.可以形成复杂的变化,简单快速。 3.表现上更加“严谨”,在不同浏览器中都能得到很好的兼容。

    2.5K90

    android控制view的大小和位置(二)

    上一次我讲的android控制view的大小和位置(一)中,只讲了RelativeLayout动态加载子view的流程,今天我讲讲添加子view的各种规则,如下: 第一类:属性值为true或false...    第二类:属性值必须为id的引用名“@id/id-name”     android:layout_below 在某元素的下方     android:layout_above 在某元素的的上方...本元素的上边缘和某元素的的上边缘对齐     android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐     android:layout_alignBottom...本元素的下边缘和某元素的的下边缘对齐     android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐     第三类:属性值为具体的像素值,如30dip,40px...离某元素右边缘的距离     android:layout_marginTop 离某元素上边缘的距离 对于以父容器为参考系的规则,在addRule时只需写出规则即可,但是如果是以其他兄弟view为参考系时

    1.3K10

    android控制view的大小和位置(一)

    1.首先,我们已经知道通过addView这个方法可以动态的添加自己新建的一个view,例如activityLayout.addView(new Button());这样就可以添加一个新的button,而且在添加时可以规定新的...view的位置和大小,通过RelativeLayout.LayoutParams控制,例如 RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams...,不仅如此,还能够设置在父容器中位置,如 lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); lp.addRule(RelativeLayout.ALIGN_PARENT_TOP...); 这样就规定一个只能在父容器右上方添加view的规则,十分方便。...2.如果添加之后还想改变某个view的大小和位置,那么就通过setLayoutParams,参数仍为RelativeLayout.LayoutParams 3.如果想改变view在层次,如想把某个button

    1.9K40

    css控制滚动条透明,CSS控制滚动条样式的解析

    我们在之前的两篇文章中,我们给大家介绍了关于CSS设置div滚动条样式、以及CSS3自定义滚动条样式的实例, 都知道当内容超出容器时,容器会出现滚动条,那我们如何使用CSS控制滚动条样式的呢?...例子:/*作为IT界最前端的技术达人,页面上的每一个元素的样式我们都必须较真,就是滚动条我们也不会忽略。...下面我给大家分享一下如何通过CSS来控制滚动条的样式,代码如下:*/ /*定义滚动条轨道*/ #style-2::-webkit-scrollbar-track { background-color...*隐藏滚动条: 1、去掉水平方向的滚动条: 2、去掉垂直方向的滚动条: 3、隐藏横向、显示纵向滚动条: 4、隐藏全部滚动条: 或者 更好的方法就是把滚动条的颜色设置为完全透明,这样既可以实现内容的滚动...相信通过本文的学习,小伙伴们对css控制滚动条样式,有了进一步的了解和认识,希望对你的工作有所帮助!

    9K20
    领券