2016-12-05 214 views
0

我最近做了一些關於android drawable的測試,我發現android:src行爲對於padding來說是非常奇怪的,比較android:background。爲什麼android:src在drawable中的填充行爲很奇怪?

這裏是我的繪製:

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item> 
      <shape android:shape="oval"> 
       <solid android:color="@color/colorAccent"/> 
       <padding 
        android:top="1dp" 
        android:right="1dp" 
        android:bottom="1dp" 
        android:left="1dp" 
        /> 
      </shape> 
     </item> 
     <item android:top = 2> 
      <shape android:shape="oval"> 
       <solid android:color="@color/white"/> 

      </shape> 
     </item> 
</layer-list> 

內部在MainActivity佈局我有我用來測試其他圖像視圖。我將圖像視圖設置爲40dp的寬度和高度。然後通過將它們設置爲我上面的drawable來測試android:src與android:background屬性。下面是結果:

安卓:SRC

enter image description here

安卓背景

enter image description here

了Android:背景,你可以看到的是預期的行爲,因爲我謹白向下滾動2,並且它具有服從粉紅色橢圓形填充的填充。現在android:src是直線上升的,因爲沒有顯示第一個白色橢圓,它是粉紅色橢圓上方的圖層。其次,形狀變成扁平的橢圓形。

任何線索爲什麼這是這種情況??????

回答

1

src作品與android:scaleType在那裏你可以給不同的選項ScaleType

而背景總是需要的FitXY scaleType覆蓋全區域的這一觀點。

如果你想相同的行爲背景SRC

放機器人:scaleType = 「FitXY」。還有其他的選擇你也應該檢查。