2017-09-25 50 views
0

我有一個像下面這樣的相對佈局,當我將RelativeLayout高度硬編碼爲25dp時,它沒有問題,如下圖所示。如何根據「相對佈局」中Android元素的總高度使垂直線可展開?

enter image description here

我要的是,當紅色水平線可以自動擴展高度時TextView成爲多行,而不是硬編碼的高度。

這裏是我的代碼

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 

    <View 
     android:id="@+id/line" 
     android:layout_width="3dp" 
     android:layout_height="match_parent" 
     android:background="@color/blue" /> 

    <TextView 
     android:id="@+id/TextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerVertical="true" 
     android:layout_marginLeft="4dp" 
     android:layout_marginStart="4dp" 
     android:layout_toEndOf="@+id/line" 
     android:layout_toRightOf="@+id/line" 
     android:text="TextView" 
     android:textColor="@color/black" 
     android:textSize="14sp" /> 
</RelativeLayout> 

當我改變RelativeLayout高度wrap_content,垂直線變得不可見。

所以我的問題是,如何使垂直line高度可以擴展取決於高度TextView

+1

檢查這個https://stackoverflow.com/questions/15128652/how-to-add-vertical分頻到一個水平-的LinearLayout –

回答

2

您可以使用水平線性佈局

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal"> 

    <View 
     android:id="@+id/line" 
     android:layout_width="13dp" 
     android:layout_height="match_parent" 
     android:background="@color/md_blue_900" /> 

    <TextView 
     android:id="@+id/TextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginLeft="4dp" 
     android:layout_marginStart="4dp" 
     android:text="TextView" 
     android:textColor="@color/md_black_1000" 
     android:textSize="14sp" /> 
</LinearLayout> 
0

下面的代碼對我的作品

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="horizontal" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:gravity="center"> 
    <View 
     android:id="@+id/line" 
     android:layout_width="3dp" 
     android:layout_height="match_parent" 
     android:background="#cd2121" /> 

    <TextView 
     android:id="@+id/TextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginLeft="4dp" 
     android:layout_marginStart="4dp" 
     android:text="TextView \n tegdienaifa \n nfuyeuayeyae \n tefgaeyigufYK" 
     android:textSize="14sp" /> 
</LinearLayout> 
相關問題