これは私を完全に狂気に駆り立てています。Androidでやや複雑なレイアウトを使いたい。物事のサイズを修正するのではなく、重みを使用しようとしています。それはもう諦めた方がいいのかな…
これが私がやりたいことです:
3 つのスクロールビュー (内部にテキストビューを含む) とリストビューをすべて同じサイズにしたい。
私は 4 の重み合計で TableLayout を使用し、スクロールビューとリストビューを含む行に 1 の重みを与えました。重みが割り当てられていない他の行があるので、これは実際にはうまくいきました。しかし、リストビューが実際に読み込まれるか、テキストビューが複数の行を占有し始めると、すべてが台無しになります。全部同じ大きさにしてほしい。
現在の axml ファイルを以下に貼り付けました。私は何百万もの異なることを試しましたが、あきらめる準備ができています. これは本当に難しいことではありません。
前もって感謝します!
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/StepTable"
android:stretchColumns="*"
android:orientation="vertical"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:background="@color/bgray"
android:padding="15dp"
android:weightSum="4">
<TableRow
style="@style/PhaseHeaderRow">
<TextView
android:text="Header 1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="3"
style="@style/PhaseHeader" />
</TableRow>
<TableRow
style="@style/PhaseRow.ListHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="horizontal"
android:weightSum="8"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="3">
<TextView
android:id="@+id/txt_PhaseListNumber"
android:gravity="center"
android:layout_weight="1"
android:text="Sub"
style="@style/PhaseTextView.List"
android:width="0px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="2dp" />
<TextView
android:id="@+id/txt_PhaseListStatus"
android:layout_weight="2"
android:gravity="center"
style="@style/PhaseTextView.List"
android:width="0px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="2dp"
android:text="head" />
<TextView
android:id="@+id/txt_PhaseListNote"
android:layout_weight="5"
android:gravity="left"
android:text="er"
style="@style/PhaseTextView.List"
android:width="0px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="2dp" />
</LinearLayout>
</TableRow>
<TableRow
android:id="@+id/row_StepList"
android:layout_weight="1"
android:layout_width="fill_parent"
android:background="#ff9abf2f"
android:layout_height="wrap_content">
<ListView
android:id="@+id/list_Steps"
android:layout_span="3"
android:listSelector="#44ff0000"
android:drawSelectorOnTop="true"
android:choiceMode="singleChoice"
android:layout_width="fill_parent" />
</TableRow>
<TableRow
android:id="@+id/row_PhaseDescHeader"
style="@style/PhaseHeaderRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txt_PhaseDescHeader"
style="@style/PhaseHeader"
android:text="Header 2" />
</TableRow>
<TableRow
android:id="@+id/row_TesterActionLabel"
style="@style/PhaseRow.ListHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txt_TesterActionLabel"
android:text="SubHeader"
style="@style/PhaseTextView.List"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</TableRow>
<TableRow
android:id="@+id/row_TesterAction"
style="@style/PhaseRow"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ScrollView
android:id="@+id/scroller_TesterAction"
android:layout_weight="1"
android:scrollbars="vertical"
android:fillViewport="true"
android:layout_span="3"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/txt_TesterAction"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textSize="15sp"
android:ellipsize="start"
android:text="ScollView with TextView Inside" />
</ScrollView>
</TableRow>
<TableRow
android:id="@+id/row_ExitCriteraLabel"
style="@style/PhaseRow.ListHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txt_ExitCriteraLabel"
android:text="SubHeader"
style="@style/PhaseTextView.List"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</TableRow>
<TableRow
android:id="@+id/row_ExitCritera"
style="@style/PhaseRow"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ScrollView
android:id="@+id/scroller_ExitCritera"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical"
android:fillViewport="true"
android:layout_span="3">
<TextView
android:id="@+id/txt_ExitCritera"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15sp"
android:ellipsize="start"
android:text="Another ScollView with TextView Inside" />
</ScrollView>
</TableRow>
<TableRow
android:id="@+id/row_PhaseNotesHeader"
style="@style/PhaseHeaderRow">
<TextView
android:id="@+id/txt_PhaseNotesHeader"
style="@style/PhaseHeader"
android:text="Header 3" />
</TableRow>
<!-- -->
<TableRow
android:id="@+id/row_Notes"
style="@style/PhaseRow"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ScrollView
android:id="@+id/scroller_Notes"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical"
android:fillViewport="true"
android:layout_span="3">
<TextView
android:id="@+id/txt_Notes"
android:layout_width="fill_parent"
android:textSize="17sp"
android:layout_height="wrap_content"
android:text="Yet another ScollView with TextView Inside"
android:singleLine="false"
android:ellipsize="none" />
</ScrollView>
</TableRow>
</TableLayout>
</TableLayout>