2013-05-09 50 views
0

我已經爲我的CustomAdapter下面的XML文件:顯示在另一個的上面如何格式化的ListView行

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="?android:attr/listPreferredItemHeight" 

    android:padding="6dip"> 

    <TextView 
     android:id="@+id/firstLine" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/nullline" 
     android:layout_alignParentBottom="true" 
     android:gravity="center_vertical" 
     android:text="My Application" 
     android:textColor="#0099CC" /> 

    <TextView 
     android:id="@+id/nullline" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:layout_above="@+id/secondLine" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:textColor="#0099CC" 
     android:text="seas" /> 

    <TextView 
     android:id="@+id/secondLine" 
     android:layout_width="fill_parent" 
     android:layout_height="26dip" 
     android:layout_alignBottom="@+id/firstLine" 
     android:layout_alignLeft="@+id/firstLine" 
     android:ellipsize="marquee" 
     android:singleLine="true" 
     android:text="Secondline" 
     android:textColor="#0099CC" /> 

</RelativeLayout> 

現在,我試圖通過添加layout_above但我TextViews的一個格式化這個。

我想顯示爲

的TextView ONE

TextView的兩個

TextView的三

我怎樣才能顯示它像這樣,如果layout_below不起作用?

+1

*「之間的其他」*?對不起,但我不知道這意味着什麼......你的意思是「除了」(如同在一邊)?你使用什麼佈局作爲基礎? – m0skit0 2013-05-09 15:43:48

+1

你能用完整的xml和可能的UI設計來編輯你的問題嗎? – Hein 2013-05-09 15:43:48

回答

1

這就像你想要的(如果我明白你....)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 

android:padding="6dip"> 

<TextView 
    android:id="@+id/firstLine" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:gravity="center_vertical" 
    android:text="My Application" 
    android:textColor="#0099CC" /> 

<TextView 
    android:id="@+id/nullline" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/firstLine" 
    android:textColor="#0099CC"/> 

<TextView 
    android:id="@+id/secondLine" 
    android:layout_width="fill_parent" 
    android:layout_height="26dip" 
    android:layout_below="@+id/nullline" 
    android:ellipsize="marquee" 
    android:singleLine="true" 
    android:text="Secondline" 
    android:textColor="#0099CC" /> 

,如果你用它好了:)

0

如果您還沒有,我建議您閱讀LayoutParametersRelativeLayout

視圖彼此重疊,因爲您正在使用您需要獲取的內容的錯誤屬性/屬性。例如:

android:layout_alignBottom="@+id/firstLine" 

也許應該是:

android:layout_below="@+id/firstLine" 

這是因爲layout_alignBottom使得這一觀點的底部邊緣給定錨點視圖ID的底邊相匹配,而layout_below位置上方該視圖的邊緣在給定錨點視圖ID下方。

1

layout_below不工作layout_below工作。不過,這裏最容易的事情是將其設置爲LinearLayout,垂直方向爲orientation。但有些事情我錯在這裏看到的是

<TextView 
    android:id="@+id/nullline" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/secondLine" 
    android:layout_alignParentLeft="true" 
    android:textColor="#0099CC" 
    android:text="seas" /> 

heightfill_parent,你有alignParentRightalignParentLeft設置爲true。這似乎將佔用整個篩選。嘗試類似

<TextView 
    android:id="@+id/firstLine" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:gravity="center_vertical" 
    android:text="My Application" 
    android:textColor="#0099CC" /> 

<TextView 
    android:id="@+id/nullline" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/firstLine" 
    android:layout_alignParentLeft="true" 
    android:textColor="#0099CC" 
    android:text="seas" /> 

<TextView 
    android:id="@+id/secondLine" 
    android:layout_width="fill_parent" 
    android:layout_height="26dip" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/nullLine" 
    android:ellipsize="marquee" 
    android:singleLine="true" 
    android:text="Secondline" 
    android:textColor="#0099CC" /> 

我還沒有機會測試它,但類似的東西應該讓你開始。它看起來像你也有一些遞歸佈局,如告訴view1左邊view2view2是正確的view1。它似乎應該做同樣的事情,但它可能會導致遞歸錯誤