2016-11-14 78 views
1

我有一個listView,它從一個rest API服務器獲取數據並顯示它。我需要在它的側面添加一個描述數據類型的textView。Listview和TextView對齊

屏幕的右半邊有listView,左半邊有textView。

問題出現在textView移動以適應不同屏幕尺寸時。我需要將textView固定並與listView一起顯示,並與listView保持一條直線,而與屏幕大小無關。乾杯。

編輯:圖像添加草圖

Imgur link

+0

請添加一張草圖,顯示您的目標是什麼 – uguboz

+0

您的XML佈局是什麼樣的? – MidasLefko

+0

草圖已被添加爲更好的理解,也將添加XML佈局。 – MrPool

回答

1

這聽起來像一個ListView是不是你想要使用。您無法將Views與ListView的子級對齊。您需要將TextViews放置在ListView的子項中或不使用ListView。

最簡單的方法是使用包含許多水平LinearLayout的垂直LinearLayout。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:orientation="vertical" 
       android:id="@+id/container" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <TextView 
      android:layout_width="100dp" 
      android:layout_height="match_parent"/> 
     <Item that was in the ListView /> 

    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <TextView 
      android:layout_width="100dp" 
      android:layout_height="match_parent"/> 
     <Item that was in the ListView /> 

    </LinearLayout> 

    ... 
</LinearLayout> 

ListView是真的用於滾動,當你不知道會有多少物品。

也許你已經有了一個適配器,在這個適配器中你正在處理項目的創建,這就是你使用ListView的原因。您仍可以編程方式創建LinearLayout的子項,方法是分別爲每個項目分別添加項目並將其添加到容器視圖。

原來的答案:

你可能想的TextViews與ListView的滾動以及。所以我認爲你應該使用一個ListView,然後將TextView添加到ListView項目的左側。

+0

ListView只有6個項目,並且不需要滾動。我創建了另一個ListView,但它無法像我需要的那樣共享屏幕。我怎樣才能追加原始的ListView來顯示左邊的TextView。乾杯。 – MrPool

0

你應該使用weightSum, 這裏是一個例子。

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:weightSum="2" 
    android:orientation="horizontal"> 

    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1"/> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Hello World"/> 

</LinearLayout>