是否可以在按钮上添加图像(视图)(作为背景图像)?
我正在将一个iOS应用程序移植到Android上,这在iOS上不是问题,但我想知道这是否是因为布局而在Android上的正确方法。
编辑:
要澄清,请检查此屏幕截图:
我需要左下角按钮“carte”(法语卡片)
我需要:
答案 0 :(得分:2)
目前尚不清楚您想要达到的目标,但以下内容对您有所帮助:
ImageButton
android:background
)或代码(使用setBackgroundResource
)<强>更新强>:
查看更新后的要求,最好使用custom component来实现您的目标。
答案 1 :(得分:1)
你的问题有点不清楚,但从我的理解,以下可能对你有用:
<ImageButton android:id="@+id/imgButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg_image"
android:src="@drawable/top_image"/>
希望它会有所帮助。
更新: 如果您的背景很常见,那么您可以使用以下代码设置位图:
((ImageButton)findViewById(R.id.imgButton)).setImageBitmap(bmp);
在这里,您需要在bmp变量中获取卡片图像的位图。
答案 2 :(得分:0)
您还可以使用ImageView并实现onClickListener。
答案 3 :(得分:0)
是的,这是可能的。
然后使用ImageButton ....
设置你的android:src =“@ drawable / foreground Image” 设置你的android:background =“@ drawable / background Image”
因此,如果您想为背景图像添加一个苹果,并为前景图像添加一个三维单词“apple”。
答案 4 :(得分:0)
您可以尝试这样的事情:
首先,为res / drawable /文件夹中的按钮创建一个选择器(让我们称之为selector_button.xml):
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/image_resource_for_button_pressed"
android:state_pressed="true" />
<item android:drawable="@drawable/image_resource_for_button_pressed"
android:state_focused="true" />
<item android:drawable="@drawable/image_resource_for_button_normal" />
</selector>
在这里,您可以定义为和android:drawable
不只是@drawable
,而是@color
或@layout
。如果您想要更复杂的布局,您应该使用按钮的背景图像定义一个,然后使用RelativeLayout
定义另一个图像。
为了做到这一点,你必须在你的res / drawable /文件夹中有image_resource_for_button_pressed.png
(对于按下和聚焦状态)和image_resource_for_button_normal.png
(对于正常状态)。
之后,您创建一个按钮,如下所示:
<Button
android:id="@+id/aButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/selector_button"
android:text="Hardcoded string" />
这种方法可以帮助您保持代码可读性,因为您只是将图像资源的更改提取到.xml文件中。