android 之popupWindow 在指定位置上的显示
16lz
2021-01-26
这篇文章主要介绍了popupWindow 在控件的各个方向上的显示(上、下、左、右),主要用到popupWindow 的showAtLocation()方法:
在控件的上方:
private void showPopUp(View v) {LinearLayout layout = new LinearLayout(this);layout.setBackgroundColor(Color.GRAY);TextView tv = new TextView(this);tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));tv.setText("I'm a pop -----------------------------!");tv.setTextColor(Color.WHITE);layout.addView(tv);popupWindow = new PopupWindow(layout,120,120);popupWindow.setFocusable(true);popupWindow.setOutsideTouchable(true);popupWindow.setBackgroundDrawable(new BitmapDrawable());int[] location = new int[2];v.getLocationOnScreen(location);popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0], location[1]-popupWindow.getHeight());}
在控件的其他方向上显示只需修改最后一行代码即可,如:
下方:popupWindow.showAsDropDown(v);
左边:
popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]-popupWindow.getWidth(), location[1]);右边:
popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]+v.getWidth(), location[1]);
更多相关文章
- 自定义键盘(一)
- Android(安卓)应用界面开发笔记
- PopWindow Android(安卓)7.0 位置显示不准确解决办法
- 【Android(安卓)开发教程】显示进度对话框
- ImageView的使用(android)
- Android中的ImageView的一些有用的属性
- RadioGroup没有文字只显示图片,图片居中问题
- android之Animation的基本使用
- android自定义视图属性学习