我有一个自定义图像按钮,我只希望自定义图像按钮可以点击。目前按钮的所有周围区域都是“可点击的”并启动新活动。我想最小化这个“可点击的背景”空间。我该怎么做?
<ImageButton
android:id="@+id/start_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@null"
android:src="@drawable/flashcardbutton" />
答案 0 :(得分:0)
我不确定这个但是只是猜测..是否可以使用:
public void getHitRect(Rect outRect) {
outRect.set(getLeft()-10, getTop()-10, getRight()-10, getBottom()-10);
}
答案 1 :(得分:0)
很好地向API投了一张照片我发现ImageButton
有一个带有此签名的方法
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info)
和AccessibilityNodeInfo类有此方法
public void setBoundsInScreen (Rect bounds)
所以说这个 我认为你应该实现你想要做的事情,这对于@Sushil的回答应该会让它发挥作用。
答案 2 :(得分:0)
也许这可能会有所帮助:
<ImageButton
android:id="@+id/start_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@null"
android:adjustViewBounds="true" <!-- Here is the thing you need -->
android:src="@drawable/flashcardbutton" />
答案 3 :(得分:0)
所以,我认为这绝对是我的错。即便如此,我使背景“透明”框架仍然比我的图像更大。我只需要使用photoshop并裁剪图像。谢谢大家!
答案 4 :(得分:0)
您不希望将ImageButton与您的图像一起用作'src',您希望使用常规按钮将图像作为“背景”,否则它会模仿带有填充的按钮,即使您取消也不会背景图片......
使用原始图像:
<Button
android:id="@+id/start_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@drawable/flashcardbutton" />