【问题标题】:how to expand touch area of button using delegate or gestures?如何使用委托或手势扩展按钮的触摸区域?
【发布时间】:2013-05-03 14:09:26
【问题描述】:

在我的应用程序中,有 4 个带有 WrapContent 的按钮,因此按钮点击区域非常小。

我需要使用委托或手势来增加点击区域。我正在尝试通过手动使用按钮布局和按钮大小来增加触摸区域。

【问题讨论】:

  • 我只需要使用触摸委托或手势
  • 我们不能使用填充,因为它会影响其他视图。

标签: android android-button


【解决方案1】:

只需使用带有透明部分的较大图像即可。为按钮制作一个比实际按钮大的图像,并使周围区域透明。现在,wrap_content 也将包含该区域,并且将在整个区域上检测到触摸手势,而用户只会看到一个小按钮。

【讨论】:

    【解决方案2】:

    您可以在 XML 或动态中为按钮(或任何视图,实际上)添加一些填充。 padding 是透明的,并且仍然接收 View 的触摸事件。

    或者,您可以使用TouchDelegate,但我个人觉得对于这样一个简单的任务有点多余和不必要的复杂。

    【讨论】: