PopupWindow自定义位置显示的实现代码
短信预约 -IT技能 免费直播动态提醒
一、概述
在Android中弹出式菜单(以下称弹窗)是使用十分广泛的一种菜单呈现方式,弹窗为用户交互提供了便利。关于弹窗的实现大致有以下两种方式AlertDialog和PopupWindow,当然网上也有使用Activity并配合Dialog主题的方式实现弹窗,有兴趣的朋友也可以去研究一下。对于AlertDialog和PopupWindow两者最主要的区别就是显示的位置问题:
(1)AlertDialog在位置显示上是固定的
(2)PopupWindow相对比较随意,能够在主屏幕的任意位置显示。
二、效果图
三、代码
(1)MainActivity中的代码:
public class MainActivity extends AppCompatActivity { private int x; private int y; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onTouchEvent(MotionEvent event) { // 获得点击屏幕的坐标 x = (int) event.getX(); y = (int) event.getY(); // 加载PopupWindow 对应的界面 LayoutInflater inflater = getLayoutInflater(); final View popupView = inflater.inflate(R.layout.popup_entry_layout,null); // 创建PopupWindow 对象 final PopupWindow popupWindow = new PopupWindow(popupView,400,100); // 第二、第三个参数用来设置弹窗的大小,也可以用WRAP_CONTENT // 设置位置 popupWindow.showAtLocation(popupView, Gravity.NO_GRAVITY,x,y); new Handler().postDelayed(new Runnable() { @Override public void run() { // 1秒后关闭该弹窗 popupWindow.dismiss(); } },1000); return true; }}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
PopupWindow自定义位置显示的实现代码
下载Word文档到电脑,方便收藏和打印~
下载Word文档
相关文章
- 如何利用 Bootstrap 增强 Java Web 应用的交互性?(利用Bootstrap增强Java Web应用的交互性)
- 如何在 Java 中进行 PropertyGrid 的性能优化?(Java中PropertyGrid的性能优化方法)
- Java ushort 类型存在哪些安全隐患?如何进行分析?(java ushort类型的安全隐患分析 )
- Java 高并发编程的最佳实践都有哪些?(java高并发编程的最佳实践有哪些)
- Java 中如何定义一个方法?(详细教程)(java怎么定义一个方法)
- 在 Java 中,反射究竟是什么?(java中反射是什么)
- Java 中 metrics 的作用究竟是什么?(java中metrics的作用是什么)
- Java 怎样才能编译成 class?(java如何编译成class)
- 掌握PHP数据类型转换:实用工具与技巧
- 如何在 Java 中获取当前路径?(java怎么获取当前路径)
猜你喜欢
PopupWindow自定义位置显示的实现代码
一、概述在Android中弹出式菜单(以下称弹窗)是使用十分广泛的一种菜单呈现方式,弹窗为用户交互提供了便利。关于弹窗的实现大致有以下两种方式AlertDialog和PopupWindow,当然网上也有使用Activity并配合Dialog
2023-05-30
2024-04-02
Android编程实现的自定义弹窗(PopupWindow)功能示例
本文实例讲述了Android编程实现的自定义弹窗(PopupWindow)功能。分享给大家供大家参考,具体如下:
在开发过程中,如果要弹出一个对话框,一般是使用AlertDialog,但其使用限制太大,灵活性不够,所以我们常需要用到灵活性更
2022-06-06
C#实现自定义屏保的示例代码
这篇文章主要为大家详细介绍了如何利用C#实现自定义屏保的功能,文中的示例代码讲解详细,对我们学习C#有一定的帮助,感兴趣的小伙伴可以跟随小编一起了解一下
2022-12-31
Android 自定义缩短Toast显示时间的实例代码
我这个主要是缩短Toast显示时间,要延长时间的话,可自行更改
废话不多说哈,见代码import android.content.Context;
import android.os.CountDownTimer;
import andro
2022-06-06
Android自定义控件单位尺寸实现代码
一、自定义控件的单位和尺寸
1.一般在PC上会使用px(像素)和pt(磅)作为单位,但是在手机上由于不断地会更新手机屏幕的分辨率,因此使用这两个单位不再那么合适。可能在一部低分辨率手机上,一个控件占据整块屏幕,而在高分辨率的手机屏幕上连一半
2022-06-06
2024-04-02
2024-04-02
Android实现自定义加载框的代码示例
App在与服务器进行网络交互的时候,需要有一个提示的加载框,如图:此时我们可以自定义一个加载中的对话框,代码如下:public class LoadingDialog extends Dialog {
private static fin
2022-06-06
Android开发实现popupWindow弹出窗口自定义布局与位置控制方法
本文实例讲述了Android开发实现popupWindow弹出窗口自定义布局与位置控制方法。分享给大家供大家参考,具体如下:布局文件:主布局文件:activity_main:2023-05-30
Android 自定义dialog的实现代码
Android 自定义dialog的实现代码
搜索相关关键字网上一大堆实现,但是看完总觉得缺胳膊少腿,绕了不少弯路,终于弄好了自定义dialog。把自己整合的完整代码发上来。要点:1、设置自定义dialog的布局文件my_dialog.xm
2022-06-06
2024-04-02
Android listview如何实现定位到上次显示的位置
这篇文章主要为大家展示了“Android listview如何实现定位到上次显示的位置”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Android listview如何实现定位到上次显示的位置”
2023-05-30
2024-04-02
Android ScrollView显示到底部或任意位置实现代码
Android ScrollView显示到底部或任意位置
其实使ScrollView显示底部并不难。它有自己的方法fullScroll(): 1、显示顶部:scrollView.fullScroll(ScrollView.FOCUS
2022-06-06
2024-04-02
C++实现自定义撤销重做功能的示例代码
在使用c++做界面开发的时候,尤其是实现白板功能时需要自己实现一套撤销重做功能.如果是qt则有QUndoable对象,可以直接拿来用。但是如果是使用gdi绘图,则可能需要自己实现了。本文就来用C++实现自定义撤销重做功能,需要的可以参考一下
2022-12-15
Android自定义AvatarImageView实现头像显示效果
看看效果图:我们项目中头像显示一般都是圆形的,但是有时候不排除各种样式(不一定是个规则的形状),比如 上次UI给了我一个 圆形下面少了一块。我们一般实现自定义形状的图形有三种方式:PorterDuffXfermode 、BitmapShad
2023-05-30
Asp.net Core中实现自定义身份认证的示例代码
Asp.Net Core中虽然集成了许多常用的身份认证,但很多时候,我们还是需要实现自己的身份认证接口,本文这里就简单的介绍下如何实现自定义身份认证接口。
首先写一个简单的接口。[Authorize]
[HttpGet]
public ob
2022-06-07
编程热搜
Python 学习之路 - Python
一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-chatgpt的中文全称是什么
chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列C/C++可变参数的使用
可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃Python 3 教程
Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 PythonPython pip包管理
一、前言 在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install 和 pip , 目前官方推荐使用 pip。
编程资源站
- 资料下载
- 历年试题
目录
反馈
我要
反馈