2010-01-27 61 views
2

我目前正在開發我的第一個android應用程序。在列表視圖,我需要有各行中的以下機構:android無法在列表視圖的右側對齊圖標

  • 左邊:一個主圖標上花費行
  • 的整體高度在中間:2名的文本,一個下其他
  • 右邊:2個圖標,下面一個其他

我結束了這樣的row.xml文件,但如我所料不工作。 你知道這個文件中是否缺少明顯的東西嗎? 非常感謝, 呂克

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="?android:attr/listPreferredItemHeight" 
android:padding="6dip"> 
<ImageView 
    android:id="@+id/icon" 
    android:layout_width="48px" 
    android:layout_height="48px" 
    android:layout_marginRight="0dip" 
    android:src="@drawable/icon" /> 
<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="0dip" 
    android:layout_weight="1" 
    android:layout_height="wrap_content"> 
    <TextView 
     android:id="@+id/title" 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textSize="16dp" 
     android:textStyle="bold" 
     android:text="TITLE" 
     android:paddingLeft="5dp" 
    /> 
    <TextView 
     android:id="@+id/description" 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:textSize="14dp" 
     android:text="DESCRIPTION" 
     android:paddingLeft="5dp" 
    /> 
</LinearLayout> 
<LinearLayout 
    android:orientation="vertical" 
    android:layout_weight="1" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:layout_gravity="right"> 
    <ImageButton 
    android:id="@+id/button_modify" 
    android:layout_width="16px" 
    android:layout_height="16px" 
    android:src="@drawable/deleteicon" 
    /> 
    <ImageButton 
    android:id="@+id/button_delete" 
    android:layout_width="16px" 
    android:layout_height="16px" 
    android:src="@drawable/modifyicon" 
    /> 
</LinearLayout> 

回答

6

在右手柱LinearLayout,加

android:layout_width="wrap_content" 
android:gravity="right" 

這應該使圖標應屬於向右(因爲gravity設置的。)

+1

非常感謝,我已經加入了: android:layout_width =「wrap_content」(不適用於fill_parent) android:gravity =「right」 Luc – Luc 2010-01-27 14:23:36

+0

當然。修正,如上所述。 – 2010-02-18 18:25:51

4

考慮像你描述切換到RelativeLayout的規則集。使用LinearLayouts可能無法在所有情況下工作,並且在堆棧消耗方面效率會低於RelativeLayout

+0

你好,是的,這是一個好點的你很好。由於我不熟悉android佈局,因此我選擇了LinearLayout,因爲它看起來比較簡單,但我將明確地看一看RelativeLayout。謝謝了很多,Luc – Luc 2010-01-27 14:25:27