【Android 非常基础】PopupWindow showAtLocation和showAsDropDown参数分析
2015-01-27 09:56
976 查看
PopupWindow 的这两个方法都是控制PopupWindow 出现的,具体分析如下:
1.showAtLocation,例如:showAtLocation(findViewById(R.id.search_ib), Gravity.TOP | Gravity.RIGHT,10, 10);
第一个参数:这个view是要能获取到window唯一标示的(也就是只要能获取到window 标示,view是什么控件都可以),应该是标示这个pw添加到哪个window里面,对控制pw出现位置没有影响;
第二个参数:请记住屏幕原点是屏幕的左上角。Gravity.TOP | Gravity.RIGHT指的就是屏幕的右上角,那么pw的中心点坐标是(屏幕宽,0)。pw默认是在屏幕的中间,也就是Gravity.LEFT表示pw的中心点坐标是(0,1/2屏幕高);
第三、四个参数:偏移量的方向与第二个参数有关。Gravity.TOP | Gravity.RIGHT,以屏幕右上角为原点,pw往X轴负方向偏移10个像素,往Y轴正方向偏移10个像素;如果是Gravity.BOTTOM| Gravity.LEFT,以屏幕左下角为原点,pw往X轴正方向偏移10个像素,往Y轴正方向偏移10个像素。
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。具体往轴的那个方向偏移,跟第二个参数有关,对于Gravity.CENTER的情况,偏移量负表示往轴的负方向,正往轴的正方向
2.showAsDropDown,例如:showAsDropDown(MainActivity.this.findViewById(R.id.logo_iv),100,0),
以R.id.logo_iv的左下角为原点,向X轴正方向偏移100个像素,Y轴方向偏移0个像素。
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。
1.showAtLocation,例如:showAtLocation(findViewById(R.id.search_ib), Gravity.TOP | Gravity.RIGHT,10, 10);
第一个参数:这个view是要能获取到window唯一标示的(也就是只要能获取到window 标示,view是什么控件都可以),应该是标示这个pw添加到哪个window里面,对控制pw出现位置没有影响;
第二个参数:请记住屏幕原点是屏幕的左上角。Gravity.TOP | Gravity.RIGHT指的就是屏幕的右上角,那么pw的中心点坐标是(屏幕宽,0)。pw默认是在屏幕的中间,也就是Gravity.LEFT表示pw的中心点坐标是(0,1/2屏幕高);
第三、四个参数:偏移量的方向与第二个参数有关。Gravity.TOP | Gravity.RIGHT,以屏幕右上角为原点,pw往X轴负方向偏移10个像素,往Y轴正方向偏移10个像素;如果是Gravity.BOTTOM| Gravity.LEFT,以屏幕左下角为原点,pw往X轴正方向偏移10个像素,往Y轴正方向偏移10个像素。
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。具体往轴的那个方向偏移,跟第二个参数有关,对于Gravity.CENTER的情况,偏移量负表示往轴的负方向,正往轴的正方向
2.showAsDropDown,例如:showAsDropDown(MainActivity.this.findViewById(R.id.logo_iv),100,0),
以R.id.logo_iv的左下角为原点,向X轴正方向偏移100个像素,Y轴方向偏移0个像素。
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。
相关文章推荐
- 【Android 非常基础】PopupWindow showAtLocation和showAsDropDown参数分析
- PopupWindow showAtLocation和showAsDropDown参数分析
- PopupWindow showAtLocation和showAsDropDown参数分析
- Android编程之PopupWindow隐藏及显示方法示例(showAtLocation,showAsDropDown)
- PopupWindow之showAtLocation,showAsDropDown
- Android PopupWindow怎么合理控制弹出位置(showAtLocation)
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- 【Android 非常基础】ListView分页加载提交的参数分析
- (原创)关于PopupWindow的showAsDropDown()和showAtLocation()使用方式及其区别
- showAsDropDown && showAtLocation
- android popupwindow showAsDropDown offsetx无效的问题
- How does popupWindow.showAtLocation work? copy from stackoverflow
- (转)关于PopupWindow的showAsDropDown()和showAtLocation()使用方式及其区别
- PopupWindow.showAtLocation理解
- Android7.0上PopupWindow的showAsDropDown位置问题 参数无效
- Android开发之PopupWindow的showAtLocation()和showAsDropDown()
- PopupWindow popupWindow.showAtLocation(view,Gravity.TOP,x,y) 被顶部系统状态栏挡住内容