如何用图像完全填充图像按钮?

时间:2016-01-29 11:15:40

标签: android android-layout

我有这些图像按钮,图像按钮的图像存储在    可绘制的文件。但是,我只是无法用图像填充图像按钮。    仍然会留下一些空的空间,这使它不那么美丽。    有没有办法让图像按钮完全填满图像?这里显示    我的图片按钮xml代码。

 <?xml version="1.0" encoding="utf-8"?>
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView01"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<RelativeLayout
    android:id="@+id/RelativeLayout01"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" 
   tools:context=".MainActivity">

   <LinearLayout
    android:id="@+id/LinearLayout01"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="20dp">

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="60dp"
        android:layout_gravity="center"
        android:adjustViewBounds="true"
        android:src="@drawable/homepage"
        android:layout_marginLeft="80dp"/>

    <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="85dp"
        android:layout_height="wrap_content"
        android:text="Login"
        android:id="@+id/buttonSignUP"
        android:layout_gravity="right"
        android:layout_marginLeft="40dp"/>

    </LinearLayout>

    <SearchView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/searchView"
    android:layout_below="@+id/viewFlipper"
    android:layout_alignParentStart="true"
    android:text="Search a product"
    android:layout_alignParentEnd="true"
        android:layout_marginTop="20dp"/>

   <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Featured promotion"
    android:id="@+id/textView"
    android:layout_below="@+id/searchView"
    android:layout_alignParentStart="true"
    android:layout_marginTop="20dp" />

   <ViewFlipper
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/view_flipper"
    android:layout_alignEnd="@+id/imageButton2"
    android:layout_marginTop="20dp">
    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:adjustViewBounds="true"
            android:src="@drawable/banner5" />

    </RelativeLayout>

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:adjustViewBounds="true"
            android:src="@drawable/banner6" />

    </RelativeLayout>

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:adjustViewBounds="true"
            android:src="@drawable/banner7" />

    </RelativeLayout>

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:adjustViewBounds="true"
            android:src="@drawable/banner8" />
    </RelativeLayout>
   </ViewFlipper>

  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Categories"
    android:id="@+id/textView2"
    android:layout_below="@+id/textView"
    android:layout_marginTop="40dp" />

    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="20dp">

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton"
    android:layout_below="@+id/textView2"
    android:src="@drawable/fashion"
    android:layout_toStartOf="@+id/imageButton3" />

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton2"
    android:layout_alignParentEnd="true"
    android:layout_below="@+id/textView2"
    android:src="@drawable/book"
    android:layout_above="@+id/imageButton5"
    android:layout_gravity="center_vertical"
    android:layout_marginLeft="40dp"/>

    </LinearLayout>

    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="20dp">

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton3"
    android:src="@drawable/sport"
    android:layout_alignTop="@+id/imageButton2"
    android:layout_centerHorizontal="true"
    android:layout_alignBottom="@+id/imageButton2"
    android:layout_gravity="center_vertical" />

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton4"
    android:layout_below="@+id/imageButton"
    android:layout_alignParentStart="true"
    android:src="@drawable/healthcare"
    android:layout_marginLeft="40dp"/>

    </LinearLayout>

    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="20dp">

    <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton5"
    android:layout_alignTop="@+id/imageButton4"
    android:layout_alignEnd="@+id/imageButton2"
    android:src="@drawable/computer"
    android:layout_alignBottom="@+id/imageButton4"
    android:layout_alignStart="@+id/imageButton2" />

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton6"
    android:layout_alignBottom="@+id/imageButton4"
    android:src="@drawable/phone"
    android:layout_alignTop="@+id/imageButton4"
    android:layout_alignEnd="@+id/imageButton3"
    android:layout_toEndOf="@+id/imageButton4"
    android:layout_marginLeft="40dp"/>
        </LinearLayout>

            <LinearLayout android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:layout_marginTop="20dp"
                android:layout_marginLeft="20dp">

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton7"
    android:src="@drawable/stationary"
    android:layout_below="@+id/imageButton4"
    android:layout_alignParentStart="true" />

   <ImageButton
    android:layout_width="120dp"
    android:layout_height="100dp"
    android:id="@+id/imageButton8"
    android:src="@drawable/others"
    android:layout_below="@+id/imageButton5"
    android:layout_alignStart="@+id/imageButton6"
    android:layout_alignEnd="@+id/imageButton6"
    android:layout_marginLeft="40dp"/>

    </LinearLayout>

  </LinearLayout>
  </RelativeLayout>
  </ScrollView>

4 个答案:

答案 0 :(得分:0)

是的,您可以使用android:scaleType="fitXY"

OR

android:scaleType="fitCenter"

例如。

 <ImageButton
        android:id="@+id/imageButton"
        android:layout_width="120dp"
        android:layout_height="100dp"
        android:layout_below="@+id/textView2"
        android:adjustViewBounds="true"
        android:background="@null"
        android:src="@drawable/fashion"
        android:scaleType="fitCenter" />

答案 1 :(得分:0)

您可以使用android:scaleType属性填充ImageButton。我通常使用fitXYfitCenter来覆盖图片ImageButton。要删除灰色背景,请使用android:background="@null"。例如 -

<ImageButton
android:layout_width="120dp"
android:layout_height="100dp"
android:id="@+id/imageButton2"
android:layout_alignParentEnd="true"
android:layout_below="@+id/textView2"
android:src="@drawable/book"
android:layout_above="@+id/imageButton5"
android:layout_gravity="center_vertical"
android:layout_marginLeft="40dp"
android:scaleType="fitXY"
android:background="@null" />

答案 2 :(得分:0)

  1. 添加ScaleType

    android:scaleType="fitXY"
    
  2. 和背景为null以删除灰色背景

    android:background="@null"
    

答案 3 :(得分:0)

你可以使用android:scaleType =“fitXY”