![](/img/trans.png)
[英]How to set ImageButton size and when button is pressed show it on added image
[英]imagebutton set image size
所以想象一下你的布局上有幾個按鈕。 該項目即將完成,並且有很多動態的東西(以編程方式設置圖像,監聽器,聲明的繪圖等等)。
現在,你被告知按鈕有點棘手,所以你的第一個想法(至少是我的)是“好的,我只是讓邊界框更大”。 要做到這一點,我只需要給那些按鈕增加更多的寬度和高度,這樣它們就更容易點擊。
當我看到那些按鈕使用背景來存儲圖像時,我的問題出現了,因此,每當我將它們變大時,內部的圖像就會變大。
我的問題是,我是不是必須在它上面創建一個布局,將監聽器分配給這個新的更大的布局,然后將按鈕保留為圖像,還是有更簡單的方法?
/¯¯¯¯¯¯¯¯¯¯¯¯\ <- outter layout
/¯¯¯¯¯¯¯¯\ | /¯¯¯¯¯¯¯¯\ |
| | | | | |
| BUTTON | ---> | | BUTTON | |
| | | | | |
\________/ | \________/ |
\____________/
謝謝
沒關系,找到了答案,我會把它放在這里以防萬一其他人有這個問題。
在我們的例子中,我們無法編輯圖像,我所做的是將Button節點更改為ImageButton。 現在,我們使用src而不是使用背景,一旦放大了ImageButton,就會添加一個簡單的內部填充,因此即使按鈕本身實際上更大,因此圖像也能保持原始尺寸,因此更容易點擊。
另外,如果你以前的背景有alpha,你現在可能想要這樣做:
android:background="@null"
在xml布局中使用它
android:background="@null"
這將幫助您將按鈕顯示為僅圖像
編輯所有按鈕並將layout_margin
或padding
設置為您需要的空間。
例:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:padding="20dp"
android:text="Button" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.