如何向按钮添加图像而不是文本?
ImageButton
小部件即可。
只需使用 ImageButton View 并为其设置图像即可:`
<ImageButton
android:id="@+id/searchImageButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:src="@android:drawable/ic_menu_search" />
正如他所说,使用了
ImageButton
小部件。将图像文件复制到项目的 Res/drawable/
目录中。在 XML 中,只需进入 XML 文件的图形表示(为简单起见),然后单击您添加的 ImageButton
小部件,转到其属性表并单击 src:
字段中的 [...]。只需导航到您的图像文件即可。另外,请确保您使用正确的格式;由于我自己的原因,我倾向于坚持使用 .png 文件,但它们确实有效。
你应该尝试这样的事情
<Button
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/qrcode"/>
android:background="@drawable/qrcode"
会做到的
材质组件中的新
MaterialButton
可以包含一个图标:
<com.google.android.material.button.MaterialButton
android:id="@+id/material_icon_button"
style="@style/Widget.MaterialComponents.Button.TextButton.Icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/icon_button_label_enabled"
app:icon="@drawable/icon_24px"/>
您还可以自定义一些图标属性,例如
iconSize
和 iconGravity
。
参考这里。
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="News Feed"
android:icon="@drawable/newsfeed" />
newsfeed 是可绘制文件夹中的图像
将您的图像放入可绘制文件夹中。这里我的图片文件名为 left.png
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="118dp"
android:layout_y="95dp"
android:background="@drawable/left"
android:onClick="toast"
android:text=" " />
在 xml 文件中使用 android:drawableright 或 android:drawabletop,... 按钮属性。
例如:在 xml 文件中为按钮添加此属性:
Android:drawableleft="@drawable/ic_person"
或
Android:drawableright="@mipmap/ic_launcher"
您可以在 android Activity_main.xml 中创建一个 ImageButton,然后将要放置在按钮中的图像粘贴到您的可绘制文件夹中,下面是供您参考的示例代码。
<ImageButton
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginBottom="49dp"
android:layout_weight="1"
android:onClick="prev"
android:src="@drawable/prev"
/>
您可以使用 ImageView 作为 Button。创建一个 ImageView 并在为 ImageView 编写 imageView.setOnClickListener 后设置 clickable true 。
<ImageView
android:clickable="true"
android:focusable="true"`
android:id="@+id/imageview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
并在 Activity 的 oncreate 中:
imageView.setOnClickListener(...