[英]2 Views in a horizontal LinearLayout
視圖基本上是這樣設置的
LinearLayout -orientation horizontal - Height (wrap)
LinearLayout -orientation vertical - Height (wrap) - weight .65
TextView
RecyclerView
LinearLayout - orientation vertical - Height (matchparent) - weight .35
TextView
TextView
TextView
在大多數情況下,第一個LinearLayout(左一個)將確定高度的大小,因為RecyclerView通常具有多個條目。 但是對於圖像第一行,此邏輯不起作用。 如果我將LinearLayout設置為右邊作為環繞,則當左邊的那個較大時,灰色背景周圍會出現白色。 實現第二布局的最佳方法是始終與其父級保持相同的高度,如果父級太小,則父級會對其進行調整。
這是請求的完整xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_marginBottom="4dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<FrameLayout
android:background="?attr/selectableItemBackground"
android:layout_width="match_parent" android:layout_height="wrap_content">
<ProgressBar android:id="@+id/progressBar" android:layout_width="wrap_content" android:layout_height="match_parent"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:baselineAligned="false"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight=".65"
android:orientation="vertical"
android:padding="@dimen/activity_horizontal_margin">
<TextView
android:id="@+id/tv_organization"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
android:textStyle="bold"
tools:text="Duke Hospital"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/availablehours"
android:textAppearance="@android:style/TextAppearance.Small"/>
<TextView
android:id="@+id/rv_available_hours"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="false"
android:focusable="false"
android:padding="0dp"
android:paddingBottom="4dp"
android:textAppearance="@android:style/TextAppearance.Small"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".35"
android:background="@color/offWhite"
android:gravity="center"
android:orientation="vertical"
android:paddingEnd="@dimen/activity_horizontal_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingStart="@dimen/activity_horizontal_margin">
<TextView
android:id="@+id/tv_notavailable"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
android:textColor="@color/darkerGreyColor"
android:visibility="gone"/>
<TextView
android:id="@+id/tv_duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textAppearance="@style/TextAppearance.AppCompat.Display1"
android:textStyle="bold"
tools:text="30"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:textAllCaps="true"
android:layout_gravity="center_horizontal"
android:text="@string/abbrev_min"/>
<TextView
android:id="@+id/tv_labelDuration"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/estimatedwaittime"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"/>
</LinearLayout>
</LinearLayout>
</FrameLayout>
</android.support.v7.widget.CardView>
您可以設置的minHeight
LinearLayout -orientation vertical - Height (wrap) - weight .65
這樣右側的文本就不會被剪切
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.