2012-11-02 38 views
1
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:gravity="center" 
android:orientation="vertical" 
android:padding="6dp" 
android:weightSum="1.0" > 

<Button 
    android:id="@+id/btnCreateNewMonth" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_gravity="center_vertical|center" 
    android:layout_weight="0.5" 
    android:onClick="btnCreateNewMonth_clickHandler" 
    android:paddingBottom="5dp" 
    android:text="@string/btn_create_new_month" /> 

<Button 
    android:id="@+id/btnLoadExistingMonth" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_gravity="center_vertical|center" 
    android:layout_weight="0.5" 
    android:onClick="btnLoadExistingMonth_clickHandler" 
    android:text="@string/btn_load_existing_month" /> 

    </LinearLayout> 

填充對於所有面都應該是6dp。但在頂部,應用程序標題和佈局之間有一個更小的填充?!有什麼解決方案?佈局和應用標題之間的填充不同

謝謝。

回答

1

的問題是不是與填充,

如果你看一下深的佈局,可以看到按鈕被佔領地區和佈局方面的差異。

  1. Button的背景源並未完全佔用右,左,下角的空格。

  2. 但是Button的背景源已經被覆蓋並且已經被頂部佔據。

  3. 注意按鈕的背景源是帶有透明背景的9補丁圖像。

  4. 在這種情況下,例如,如果未通過該按鈕的背景源所佔據的間隙2DP手段,

    右,左,下會有一個額外2DP空格。但不在頂部。

    因此,使用6dp的填充,您將獲得右側,左側和底角兩個按鈕的2dp額外背景可見性。

所以如果你的填充值是6DP,那麼你的佈局背景的知名度將會在頂部的右側,左側底角和6DP 8DP。

這是實際的問題。

  1. 如果更改了按鈕的背景顏色,則可以看到所有4個角的均勻填充值。

  2. 如果您要爲按鈕創建圖像背景,那麼它應該同樣創建,與android默認按鈕背景不同。

因此,解決辦法是,你可以創建你的按鈕一個漸變背景或者您可以爲您的按鈕的新圖像文件。

希望你得到它,這將是對你有用的提示。

+0

如果您對上述答案滿意,請不要忘記接受它.. –