2012-03-01 72 views
1

我有一個帶有自定義項目視圖的ListView。項目佈局由ImageView,3xTextViews和3x小型ImageView(代碼如下)組成。問題是我希望所有ImageView始終可見,並強制TextViews調整它們的寬度和文本以正確分解爲多行。下面是它的樣子:ListView項目佈局問題 - 將ImageView和TextView結合起來

Layout problem

下面是版面項目的xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:id="@+id/linearLayout1" android:layout_width="fill_parent"> 
    <ImageView android:layout_width="85dp" android:layout_height="85dp" android:id="@+id/imageView1" ></ImageView> 
    <LinearLayout android:layout_height="match_parent" android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:orientation="vertical" android:paddingLeft="3dp"> 
     <TextView android:text="aa24324234" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="bold" android:textColor="@android:color/primary_text_dark"></TextView> 
     <TextView android:text="bb22222" android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="italic" ></TextView> 
     <TextView android:text="ccvvvvbb" android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="italic"></TextView> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/linearLayout3" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal" 
     android:gravity="bottom|right"> 

     <ImageView 
      android:id="@+id/imageView4" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:src="@android:drawable/ic_menu_save" /> 

     <ImageView 
      android:id="@+id/imageView3" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:src="@android:drawable/ic_lock_lock" /> 

     <ImageView 
      android:id="@+id/imageView2" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:src="@android:drawable/ic_lock_lock" /> 

    </LinearLayout> 

</LinearLayout> 

回答

1

試試這個佈局:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/linearLayout1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="85dp" 
     android:layout_height="85dp" 
     android:src="@drawable/ic_launcher" > 
    </ImageView> 

    <LinearLayout 
     android:id="@+id/linearLayout2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/imageView1" 
     android:orientation="vertical" > 

     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Jopek" 
      android:textColor="@android:color/primary_text_dark" 
      android:textStyle="bold" > 
     </TextView> 

     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="3 items" > 
     </TextView> 

     <TextView 
      android:id="@+id/textView3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Modified: 24-02-2012 20:11 asd asd asd a asdad asd " > 
     </TextView> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/linearLayout3" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:gravity="right" 
     android:orientation="horizontal" > 

     <ImageView 
      android:id="@+id/imageView4" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:background="@drawable/ic_launcher" /> 

     <ImageView 
      android:id="@+id/imageView3" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:background="@drawable/ic_launcher" /> 

     <ImageView 
      android:id="@+id/imageView2" 
      android:layout_width="24dp" 
      android:layout_height="24dp" 
      android:background="@drawable/ic_launcher" /> 
    </LinearLayout> 

</RelativeLayout> 
+0

在XML視圖3個圖像看起來就像它們在屏幕底部,但在運行時,它看起來perfect.Try吧! – Pankaj 2012-03-01 16:02:39

0

儘量減少TextView的大小在縱向佈局

0

使用了一個相對佈局列表行的主要根目錄佈局,首先將ImageView設置在右側,並將一個圖像視圖顯示在文件夾圖標上,將其放置在行的左側,然後將ImageView(s)的左側設置爲textview(s)和Ima的權利geView(文件夾)。