为什么ImageButton Xamarin.Android中镜像了镜像?

时间:2017-09-06 11:17:14

标签: android xamarin

我有一个带左向箭头的ImageButton  image

<ImageButton
        android:src="@drawable/icon_arrow_left"
        android:layout_width="17sp"
        android:layout_height="10sp"
        android:id="@+id/imageButton1"
        android:layout_gravity="center_vertical"
        android:layout_marginRight="20sp"
        android:layout_marginLeft="5sp"
        android:scaleType="centerInside" />

为什么图像被镜像/旋转并显示为a 应用程序中的right arrow

1 个答案:

答案 0 :(得分:0)

  

镜像/旋转的图像,在应用程序中显示为右箭头

我没有找到原因,但我发现有几种解决方案可以解决这个问题。

  1. 解决方案1 ​​
  2. 使用android:background属性代替android:src属性:

    <ImageButton
        android:background="@drawable/icon_arrow_left"
        ......
        />
    
    1. 解决方案2
    2. ImageButton提供更大的尺寸和白色背景颜色,它会正常显示,这是我的代码:

      <ImageButton
          android:src="@drawable/icon_arrow_left"
          android:layout_width="51sp"
          android:layout_height="30sp"
          android:layout_gravity="center_vertical"
          android:layout_marginRight="20sp"
          android:layout_marginLeft="5sp"
          android:scaleType="centerInside"
          android:background="#ffffff"/>
      
      1. 解决方案3
      2. 使用android:scaleType="center"属性,然后让ImageButton更大layout_width来调整其位置,代码如下:

        <ImageButton
            android:src="@drawable/icon_arrow_left"
            android:layout_width="30sp"
            android:layout_height="10sp"
            android:layout_gravity="center_vertical"
            android:layout_marginRight="20sp"
            android:layout_marginLeft="5sp"
            android:scaleType="center"
            />
        

        他们的effect