Android 上可以处理不规则形状上的事件吗?

2024-01-28

据我目前所知(了解很少),Android 中的所有视图都是正方形或矩形。这几乎一直都很好,直到您想要(我真正想要的)创建可以处理事件的非方形形状。

我的目标是将一个圆分为 3 个部分,每个部分 120°。圆圈的每个部分都应该像一个按钮。问题是,如果我们查看圆的三分之二并将它们放入严格包含它们的方框中,它们会相互重叠:不切实际地知道用户想要单击哪个...

我尝试使用自定义视图,在其中绘制部分,但事件在视图的所有表面上触发。

任何建议或方向都非常受欢迎。

谢谢,保罗


我相信处理这个问题的方法是重写onTouch在每个控件上,对触摸坐标执行您自己的几何检查,以及它是否在自定义区域之外return false这会将事件传递到另一个视图。否则返回调用该方法的超级版本。我不是 100% 确定,所以如果我错了,请有人纠正我,但这可能值得一试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 上可以处理不规则形状上的事件吗? 的相关文章

随机推荐

  • 滚动时列表视图图像发生变化

    I am 解析 json数据在一个列表视图 图像视图和文本视图 首先四项列表视图的图像和文本视图正确添加但是当我滚动列表视图时 图像视图中的图像正在发生变化 这是我的代码 适配器 java public class Adapter exte
  • 角度插值无法正常工作?

    我有一个带有插值的样本 当使用任何一个事件时 它会正确显示下拉值 如下所示 sample click me https stackblitz com edit angular 234dlf file src 2Fapp 2Fapp comp
  • MSBuild (TFS) 中的 Nhibernate.Bytecode.Castle 问题

    我们有一个 Fluent NHibernate 映射测试正在本地计算机上通过 但是当我们签入 TFS 时 测试在构建服务器上失败 我们正在使用 MSTest 我们得到的错误是 NHibernate Bytecode UnableToLoad
  • 如何在不修改代码的情况下禁用在 pytest 中跳过测试?

    我继承了一些实现的代码pytest mark skipif进行一些测试 阅读 pytest 文档 我知道我可以添加条件 可能检查环境变量 或者使用更高级的功能pytest mark将测试组一起控制 不幸的是 到目前为止 文档中似乎没有任何内
  • 字幕与文字混合

    我尝试使用以下方法将字幕与纯文本分开two空格处 我的 Rmd 文档的第一部分如下所示 title Script de Limpieza errores de digitalizacion y division de base madre
  • 弱引用而不是 getActivity() (Android 避免内存泄漏)?

    为了避免内存泄漏 我编写了以下方法 该方法将在活动中使用 并且主要在片段中使用 使用继承 该方法应该允许我永远不会通过调用直接引用该活动 this or getActivity 方法是 private WeakReference
  • 以另一个用户身份运行任务

    使用卡皮斯特拉诺v3 我怎样才能跑all远程任务通过su作为另一个用户 我在官方文档中找不到任何内容 http capistranorb com http capistranorb com 对于我的用例 每个虚拟主机都有一个 SSH 用户和
  • 创建事件观察者以获得焦点?

    原型中是否可以有焦点事件冒泡 我试图避免在每个输入元素上分配一个观察者
  • python和node base64解码的区别

    我对这个base64解码问题感到困惑 似乎python和node js的做法不同 我相信 Node 正确地做到了这一点 有人能帮忙指出为什么 python 在这里不起作用吗 谢谢 Node gt console log Buffer fro
  • 构建进度条而不启动新线程

    我需要在 a 中添加一个进度条JFrame但我想更新这个栏而不生成新线程 例如摇摆工人后台更新栏 有没有办法更新当前线程 主 JFrame 的当前线程 中的进度条 详细信息 我有第一类 ChooseGUI 它扩展 JFrame 并调用第二类
  • MongoDB 全文搜索 + 部分单词匹配的解决方法

    由于使用 mongodb 全文搜索无法通过 blue 一词找到 blueberry 因此我想帮助我的用户将 blue 一词补全为 blueberry 为此 是否可以查询 mongodb 全文索引中的所有单词 gt 我可以使用这些单词作为建议
  • 如何使用 Requests 从 Github 下载并写入文件

    假设 github 存储库中有一个文件 https github com someguy brilliant blob master somefile txt https github com someguy brilliant blob
  • 完全禁用 Backbone.js 哈希,但将 PushState 保留在历史记录中?

    我想使用 Backbone 出色的路由系统 但我不想为旧版浏览器提供任何形式的哈希支持 使用时是否可以完全禁用哈希pushState in Backbone History 它没有记录在backbone js 页面上 但我在带注释的源代码中
  • 离子文件下载不起作用

    我正在构建一个用于壁纸的离子应用程序 在应用程序中 显示了存储在 www assets img 中的图像 我在下面构建了 2 个按钮 用于将显示的图像下载和检索到移动设备内存 当我单击下载按钮时 会显示一个对话框 显示 下载成功 Pug j
  • 构建过程中出现“找不到类型或命名空间名称”错误

    我正在 C Windows 应用程序中使用 我已经使用 TempProWin gt 对于 Windows 应用程序项目TempProApp gt 用于数据库和使用 CSLA 方法的类文件等功能 在 TempProWin frmLogin c
  • TCP/IP IOCP 接收到的数据有时会损坏 - Windows 上的 Visual C++

    我正在编写一个简单的测试 ICOP 客户端和服务器 以确保我正确使用 API 并且服务器正确接收客户端发送的数据 我已经包含了这个问题的所有代码 这就是我遇到一些问题的地方 接收缓冲区内的数据有时似乎已损坏 损坏是因为有时缓冲区内的数据块可
  • Java 二十一点摇摆 gui ImageIcon

    我一周前刚刚开始学习 Java 并完成了我的第一个二十一点程序 我想通过使用 Java swing ImageIcon 来增强它 以便每次我抽一张牌 比如说一张 A 时 它实际上都会将 A 作为图像显示在屏幕或我当前的手牌上 我编写了这个程
  • Github 上的 Mocha 并行作业 Actions

    我刚刚切换到 Mocha 中的并行测试 效果很好 但是 当我在 github 上运行它时 它似乎没有并行运行 为了让 Mocha 在 Github Actions 上并行运行 我需要配置什么 mocharc json Mocha 9 x t
  • 下拉列表到组合框

    我正在寻找一个简单的控件或 jQuery 插件 将 DropDownList 转换为 ComboBox 我目前正在使用 Ajax Combo Box 我已经受够了 我试图使组合框的宽度为 100 但当从列表中选择一个项目时 组合框的大小调整
  • Android 上可以处理不规则形状上的事件吗?

    据我目前所知 了解很少 Android 中的所有视图都是正方形或矩形 这几乎一直都很好 直到您想要 我真正想要的 创建可以处理事件的非方形形状 我的目标是将一个圆分为 3 个部分 每个部分 120 圆圈的每个部分都应该像一个按钮 问题是 如