Android编程实现长按弹出选项框View进行操作的方法

发布时间 - 2026-01-11 01:56:47    点击率:

本文实例讲述了Android编程实现长按弹出选项框View进行操作的方法。分享给大家供大家参考,具体如下:

长按弹出选项框View进行操作

主要代码解释

private void showPopWindows(View v) {
    /** pop view */
    View mPopView = LayoutInflater.from(this).inflate(R.layout.popup, null);
    final PopupWindow mPopWindow = new PopupWindow(mPopView, ViewGroup.LayoutParams.WRAP_CONTENT,
        ViewGroup.LayoutParams.WRAP_CONTENT, true);
    /** set */
    mPopWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    /** 这个很重要 ,获取弹窗的长宽度 */
    mPopView.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
    int popupWidth = mPopView.getMeasuredWidth();
    int popupHeight = mPopView.getMeasuredHeight();
    /** 获取父控件的位置 */
    int[] location = new int[2];
    v.getLocationOnScreen(location);
    /** 显示位置 */
    mPopWindow.showAtLocation(v, Gravity.NO_GRAVITY, (location[0] + v.getWidth() / 2) - popupWidth / 2, location[1]
        - popupHeight);
    mPopWindow.update();
    final String copyTxt = (String) v.getTag();
    mPopView.findViewById(R.id.tv_copy_txt).setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        copyToClip(copyTxt);
        if (mPopWindow != null) {
          mPopWindow.dismiss();
        }
      }
    });
}

layout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:background="@drawable/pop_bg" >
  <TextView
    android:id="@+id/tv_copy_txt"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:gravity="center"
    android:text="复制邀请码"
    android:textColor="@android:color/white"
    android:textSize="12sp" />
</LinearLayout>

效果图:

根据上面可以自行调整位置。

完整实例代码点击此处本站下载

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android控件用法总结》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android数据库操作技巧总结》及《Android资源操作技巧汇总》

希望本文所述对大家Android程序设计有所帮助。


# Android  # 长按  # 弹出选项框  # View  # 操作  # android底部弹出iOS7风格对话选项框(QQ对话框)--第三方开源之IOS_Dialog_Li  # android PopupWindow 和 Activity弹出窗口实现方式  # android 弹出提示框的使用(图文实例)  # android实现百度地图自定义弹出窗口功能  # android弹出activity设置大小的方法  # Android实现弹出键盘的方法  # android 对话框弹出位置和透明度的设置具体实现方法  # Android实现可输入数据的弹出框  # Android弹出窗口实现方法  # Android百度地图实现搜索和定位及自定义图标绘制并点击时弹出泡泡  # Android实现弹出登陆框的方案  # 详解Android首选项框架的使用实例  # Android编程单选项框RadioGroup综合应用示例  # 操作技巧  # 弹出  # 进阶  # 相关内容  # 感兴趣  # 给大家  # 很重要  # 点击此处  # 更多关于  # 所述  # 程序设计  # 可以自行  # 讲述了  # TRANSPARENT  # Color  # MeasureSpec  # measure  # ColorDrawable  # WRAP_CONTENT  # LayoutParams 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 详解Android——蓝牙技术 带你实现终端间数据传输  JavaScript如何实现路由_前端路由原理是什么  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  如何快速搭建高效WAP手机网站吸引移动用户?  利用JavaScript实现拖拽改变元素大小  Laravel如何处理异常和错误?(Handler示例)  Thinkphp 中 distinct 的用法解析  PythonWeb开发入门教程_Flask快速构建Web应用  Windows10如何更改计算机工作组_Win10系统属性修改Workgroup  Laravel中的Facade(门面)到底是什么原理  大同网页,大同瑞慈医院官网?  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  深圳网站制作平台,深圳市做网站好的公司有哪些?  奇安信“盘古石”团队突破 iOS 26.1 提权  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  潮流网站制作头像软件下载,适合母子的网名有哪些?  iOS验证手机号的正则表达式  长沙企业网站制作哪家好,长沙水业集团官方网站?  如何快速使用云服务器搭建个人网站?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  浅析上传头像示例及其注意事项  javascript如何操作浏览器历史记录_怎样实现无刷新导航  焦点电影公司作品,电影焦点结局是什么?  jquery插件bootstrapValidator表单验证详解  深圳网站制作的公司有哪些,dido官方网站?  如何用wdcp快速搭建高效网站?  🚀拖拽式CMS建站能否实现高效与个性化并存?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  JavaScript如何实现音频处理_Web Audio API如何工作?  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  昵图网官方站入口 昵图网素材图库官网入口  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  Laravel如何使用withoutEvents方法临时禁用模型事件  Android自定义控件实现温度旋转按钮效果  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  如何用JavaScript实现文本编辑器_光标和选区怎么处理  清除minerd进程的简单方法  浅谈javascript alert和confirm的美化  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel如何生成API文档?(Swagger/OpenAPI教程)  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  php 三元运算符实例详细介绍  Python文件异常处理策略_健壮性说明【指导】  如何在云主机上快速搭建多站点网站?