java - imagebutton 设置图像大小

标签 java android layout button

假设您的布局上有多个按钮。该项目即将完成,并且有很多动态内容(以编程方式设置图像、监听器、statedrawables 等)。

现在,您被告知点击这些按钮有点棘手,所以您的第一个想法(至少我是这样)是“好吧,我只是让边界框更大”。为此,我只需要为这些按钮提供更大的宽度和高度,以便它们更容易点击。

当我看到那些按钮使用背景来存储图像时,我的问题就来了,因此,每当我把它们变大时,里面的图像也会变大。

我的问题是,我是否必须在其上创建一个布局,将监听器分配给这个更大的新布局,然后将按钮保留为图像,还是有更简单的方法?

                                             /¯¯¯¯¯¯¯¯¯¯¯¯\ <- outter layout
                   /¯¯¯¯¯¯¯¯\                | /¯¯¯¯¯¯¯¯\ |
                   |        |                | |        | |
                   | BUTTON |      --->      | | BUTTON | |
                   |        |                | |        | |
                   \________/                | \________/ |
                                             \____________/

谢谢

最佳答案

没关系,找到答案了,我就把它留在这里,以防其他人遇到这个问题。

在我们的例子中,我们无力编辑图像,我所做的是将 Button 节点更改为 ImageButton。现在,我们不使用背景,而是使用 src,一旦 ImageButton 被放大,就会添加一个简单的内部填充,这样即使按钮本身实际上更大,图像也能保持原始大小,因此更容易点击。

附带说明一下,如果您以前的背景有 alpha,您现在可能想这样做:

android:background="@null"

关于java - imagebutton 设置图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14520352/

相关文章:

css - 在 Rails 中出于布局和 CSS 目的对网页进行分类

java - 我的数据库代码有什么问题?

android - 如何为 Android 上的任何 SMS 应用程序发送的 SMS 生成送达报告

android - 如何在 android 中制作带有图像的自定义网格?

android - Cardview 角(边)显示颜色较深,如何解决?

android - 单击内部布局重定向到另一个布局

java - CardLayout 中的可滚动 JPanel?

java - 每次我的 JSlider 移动时都会出现 JDialog

java - 模块依赖导致错误 :Gradle: Execution failed for task ':app:preDexDebug' in Android Studio

java - 如何使用 dynamodb sdk 将字符串附加到列表? ( java )