`

android 之popupWindow 在指定位置上的显示(转)

 
阅读更多

这篇文章主要介绍了popupWindow 在控件的各个方向上的显示(上、下、左、右),主要用到popupWindow 的showAtLocation()方法:

在控件的

(1)上方:

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());
	}

 

 

在控件的其他方向上显示只需修改最后一行代码即可,如:

(2)下方:

popupWindow.showAsDropDown(v);

 

 

(3)左边:

popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]-popupWindow.getWidth(), location[1]);

 

 

(4)右边:

popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]+v.getWidth(), location[1]);

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    android popupwindow 弹出固定位置

    在Android开发中,`PopupWindow`是一个非常实用的组件,它允许我们创建浮动且可定制的视图,可以在屏幕上的任意位置弹出。这个组件常用于实现下拉菜单、提示信息或者快速操作等效果。本篇文章将深入探讨如何使`...

    让popupwindow显示在view的上方并与该view水平居中对齐

    要让PopupWindow显示在指定View的上方,可以使用`showAsDropDown()`方法。这个方法需要传入目标View、相对于View的X偏移量和Y偏移量。为了使其水平居中,我们可以计算PopupWindow的宽度和目标View的中心位置,然后...

    android popupwindow 底部灰色背景

    在Android开发中,PopupWindow是一个非常实用的组件,它允许我们创建浮动窗口,可以在Activity的任何位置显示。在实现特定的UI设计时,比如底部弹出菜单或对话框,我们可能会遇到需要添加底部灰色背景的需求。这个...

    android 之popupWindow的使用

    首先,PopupWindow是一个可以浮动在Activity之上的窗口,它不依赖于任何布局,可以自由地显示在屏幕的任何位置。通过PopupWindow,开发者可以实现各种各样的弹出菜单、下拉选择器等效果。它的灵活性在于能够自定义...

    Android PopupWindow显示位置常用效果

    8. **注意权限**:如果PopupWindow需要悬浮在其他应用之上,记得在AndroidManifest.xml中添加`<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />`权限。 为了更好地理解这些知识点,你...

    android自定义popupwindow仿微信右上角弹出菜单效果

    3. **显示和关闭PopupWindow**:在需要弹出菜单的地方,实例化`CustomPopupWindow`,然后调用`showAtLocation()`方法将其显示在指定位置,通常是关联的视图上方或下方。关闭时调用`dismiss()`方法。 4. **事件监听*...

    Android: PopupWindow 上显示 ListView 并相应 Demo

    本示例将详细介绍如何在PopupWindow上显示一个ListView,并实现与之相关的交互功能,模仿QQ登录界面,虽然仍有待改进,但基本功能已经实现。 首先,让我们了解PopupWindow的基本概念。PopupWindow是Android提供的一...

    android的popupWindow使用

    综上所述,PopupWindow在Android开发中是一个非常实用的组件,它可以实现丰富的弹出窗口效果。通过定制内容视图、设置显示位置和监听用户交互,我们可以轻松地创建符合应用需求的个性化弹窗。在项目中的具体应用,...

    PopupWindow之显示顶层对话框代码

    在"PopupWindow之显示顶层对话框代码"中,我们关注的核心是如何将PopupWindow设置为屏幕的顶层对话框,使其在所有其他视图之上显示。首先,我们需要理解PopupWindow的基本用法: 1. 创建PopupWindow实例:通过`new ...

    Android-Android开发使用PupopWindow在指定View的上下左右动态显示菜单列表

    首先,PopupWindow的基本用法包括创建PopupWindow实例、设置内容视图、指定显示位置以及控制其显示与隐藏。在创建PopupWindow时,你需要提供一个布局文件,这个布局文件将作为弹窗的内容。例如: ```java ...

    android:PopupWindow的使用

    它是一个轻量级的窗口,可以显示在屏幕上的任意位置,并且可以设置是否具有背景、动画效果以及是否可触摸。创建`PopupWindow`时,我们需要提供一个`View`作为内容视图,同时指定宽度和高度。例如: ```java View ...

    Android从屏幕底部弹出PopupWindow

    在Android开发中,PopupWindow是一种常用的UI组件,它可以在屏幕上的任意位置显示一个浮动窗口,通常用于实现类似下拉菜单、提示框等效果。在这个场景中,我们要实现的是从屏幕底部弹出的PopupWindow,并带有滑动...

    android弹出PopupWindow

    在Android 7.0上,`PopupWindow`的显示位置可能会出现错乱,这通常是由于系统权限和屏幕密度变化导致的。解决这个问题的方法是: 1. 获取目标控件的准确坐标:使用`View.getLocationOnScreen()`或`View....

    Android PopupWindow泡泡效果(有listview)

    在Android开发中,PopupWindow是一个非常实用的组件,它能够创建一种浮现在当前视图之上的窗口效果,常用于实现下拉菜单、提示框等。本篇将详细讲解如何利用PopupWindow实现一个具有泡泡效果,并且包含ListView的...

    Android popupwindow 示例程序一

    PopupWindow是Android提供的一个可以显示任意View的类,它可以悬浮于Activity之上,并且可以根据需求设置是否跟随触摸事件消失、背景点击消失等特性。在实际应用中,我们常常会用它来创建下拉菜单、提示信息或者快捷...

    android 实现右上角PopupWindow弹出

    在Android应用开发中,PopupWindow是一个非常实用的组件,它能提供一种轻量级的对话框效果,可以在屏幕上的任意位置弹出,并且可以自定义其内容和样式。本示例将详细介绍如何实现一个位于右上角、类似QQ设置功能的...

    android自定义popupwindow仿微信

    在Android开发中,自定义PopupWindow是一种常见的交互方式,它能提供类似对话框的效果,但比对话框更灵活,可以自由地控制显示位置和样式。本篇内容将深入讲解如何模仿微信的PopupWindow实现,以增强应用的用户体验...

    Android PopupWindow使用

    PopupWindow是Android SDK提供的一个类,它可以创建浮动窗口,并且可以在屏幕上的任意位置显示。它不是Activity的一部分,而是直接附加到视图层次结构上,因此可以更加灵活地控制其显示位置和大小。 创建...

    Android开发之PopupWindow实现弹窗

    ### Android开发之PopupWindow实现弹窗 在Android应用开发中,`PopupWindow`是一个非常实用且灵活的组件,用于创建自定义的弹出窗口。它允许开发者在一个任意位置展示一个包含自定义视图的浮动窗口,这使得它可以...

Global site tag (gtag.js) - Google Analytics