gpt4 book ai didi

android - 使同一屏幕上的 2 个 Android ListViews 具有相同的高度

转载 作者:行者123 更新时间:2023-11-30 03:27:33 27 4
gpt4 key购买 nike

我有一个 Activity ,其中屏幕的主要区域是 2 个 ListView 。一个高于另一个。单击顶部 ListView 中的项目会更改下方 ListView 中显示的内容。

问题是我似乎无法强制每个列表始终使用可用空间的 1/2。如果顶部列表有 100 个项目,底部有 1 个 - 底部列表完全消失,顶部列表占据所有空间。

我在这里阅读了几个类似的问题 - 他们似乎都说只要将 ListView 包装在他们自己的 LinearLayouts 中就可以了。不适合我。如果其中只有几个项目,底部列表仍然会折叠成小或消失。

这是我的 xml:

  DELETED old XML due to posting size limit.

所以,我尝试了第一个建议 - 但没有用。如果列表中的项目数量大致相似,则列表只有相同的大小。如果一个列表有 100 个项目,另一个有 3 个,则 3 个项目的列表占用的屏幕空间要少得多。另外,如果两个列表都比较短,它们甚至不会填满屏幕,并在底部留下一个空白区域。请注意,此屏幕中还有其他必需的控件,其中一些控件会根据需要显示/消失。

这是更新后的 XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF000000"
android:orientation="vertical" >

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
android:orientation="vertical" >

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

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/prevButton"
style="@style/prevButton"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_weight="0.5"
android:onClick="onPrevResult" />

<com.teamunify.ondeck.widget.TUTextView
android:id="@+id/meet_name"
style="@style/sans.white.16.bold"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="2dp"
android:layout_marginRight="2dp"
android:layout_weight="1.0"
android:ellipsize="end"
android:gravity="center_horizontal"
android:paddingTop="4dp"
android:singleLine="true"
android:text="@string/example_meet_name_long" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/nextButton"
style="@style/nextButton"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_weight="0.5"
android:onClick="onNextResult" />
</LinearLayout>

<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal"
android:padding="6dp" >

<com.teamunify.ondeck.widget.TURadioButton
android:id="@+id/filter_mine"
style="@style/sans.white.14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:background="@drawable/grey_segment_left"
android:button="@drawable/small_crap"
android:gravity="center"
android:onClick="onFilterMine"
android:text="@string/my_kids" />

<com.teamunify.ondeck.widget.TURadioButton
android:id="@+id/filter_team"
style="@style/sans.white.14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:background="@drawable/grey_segment_mid"
android:button="@drawable/small_crap"
android:gravity="center"
android:onClick="onFilterTeam"
android:text="@string/my_team" />

<com.teamunify.ondeck.widget.TURadioButton
android:id="@+id/filter_all"
style="@style/sans.white.14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:background="@drawable/grey_segment_right"
android:button="@drawable/small_crap"
android:checked="true"
android:gravity="center"
android:onClick="onFilterAll"
android:text="@string/all" />
</RadioGroup>

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

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/search_button"
style="@style/searchButton"
android:layout_margin="4dp"
android:gravity="center"
android:onClick="onSearch" />

<RadioGroup
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1.0"
android:gravity="center_horizontal"
android:orientation="horizontal" >

<com.teamunify.ondeck.widget.TURadioButton
android:id="@+id/filter_events"
style="@style/sans.white.14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:background="@drawable/grey_segment_left"
android:button="@drawable/small_crap"
android:gravity="center"
android:onClick="onFilterEvents"
android:text="@string/events" />

<com.teamunify.ondeck.widget.TURadioButton
android:id="@+id/filter_swimmers"
style="@style/sans.white.14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:background="@drawable/grey_segment_right"
android:button="@drawable/small_crap"
android:checked="true"
android:gravity="center"
android:onClick="onFilterSwimmers"
android:text="@string/swimmers" />
</RadioGroup>

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/help_button"
style="@style/helpButton"
android:layout_margin="4dp"
android:gravity="center"
android:onClick="showHelp" />
</LinearLayout>
</LinearLayout> <!-- end of heading -->

<LinearLayout
android:id="@+id/tophdr_event"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_weight="0"
android:background="#FF000000"
android:orientation="horizontal" >

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_filter_gender"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onFilterGender"
android:paddingLeft="5dp"
android:text="@string/gender" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_filter_distance"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onFilterDistance"
android:paddingLeft="5dp"
android:text="@string/distance" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_filter_stroke"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onFilterStroke"
android:paddingLeft="10dp"
android:text="@string/stroke" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_filter_age"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onFilterAge"
android:paddingLeft="26dp"
android:text="@string/age" />
</LinearLayout>

<LinearLayout
android:id="@+id/tophdr_swimmer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_weight="0"
android:background="#FF000000"
android:orientation="horizontal"
android:visibility="gone" >

<com.teamunify.ondeck.widget.TUTextView
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:gravity="center_vertical"
android:paddingLeft="16dp"
android:text="@string/swimmer" />

<com.teamunify.ondeck.widget.TUTextView
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:gravity="center_vertical"
android:paddingLeft="16dp"
android:text="@string/event_age" />

<com.teamunify.ondeck.widget.TUTextView
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:gravity="center_vertical"
android:paddingLeft="16dp"
android:text="@string/team" />
</LinearLayout>

<ListView
android:id="@+id/meet_result_top_list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="2dp"
android:layout_weight="0.5"
android:background="#FF333333" />

<com.teamunify.ondeck.widget.TUTextView
android:id="@+id/meet_result_top_empty"
style="@style/sans.white.18.bold"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.5"
android:background="#FF333333"
android:gravity="center"
android:text="@string/no_matching_data"
android:visibility="gone" />

<LinearLayout
android:id="@+id/bothdr_event"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_weight="0"
android:background="#FF000000"
android:orientation="horizontal"
android:visibility="gone" >

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_event"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortEvent"
android:paddingLeft="16dp"
android:text="@string/event" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_evpos"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortPos"
android:paddingLeft="16dp"
android:text="@string/position" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_evpoints"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortPointsE"
android:paddingLeft="16dp"
android:text="@string/points" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_evtime"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortTimeE"
android:paddingLeft="16dp"
android:text="@string/time" />
</LinearLayout>

<LinearLayout
android:id="@+id/bothdr_swimmer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_weight="0"
android:background="#FF000000"
android:orientation="horizontal" >

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_swimmer"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortSwimmer"
android:paddingLeft="5dp"
android:text="@string/swimmer" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_team"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortTeam"
android:paddingLeft="14dp"
android:text="@string/team" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_swpos"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortEvent"
android:paddingLeft="25dp"
android:text="@string/position" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_swpoints"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortPointsS"
android:paddingLeft="4dp"
android:text="@string/points" />

<com.teamunify.ondeck.widget.TUButton
android:id="@+id/btn_sort_swtime"
style="@style/sans.white.12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#FF000000"
android:drawableRight="@drawable/filter"
android:gravity="center_vertical"
android:onClick="onSortTimeS"
android:paddingLeft="4dp"
android:text="@string/time" />
</LinearLayout>

<ListView
android:id="@+id/meet_result_bot_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:layout_weight="0.5"
android:background="#FF333333"
android:visibility="visible" >
</ListView>

<com.teamunify.ondeck.widget.TUTextView
android:id="@+id/meet_result_bot_empty"
style="@style/sans.white.18.bold"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center"
android:layout_weight="0.5"
android:background="#FF333333"
android:gravity="center"
android:text="@string/meet_manage:no_entries"
android:visibility="gone" />

</LinearLayout>

最佳答案

它应该有这样的形式:

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

<ListView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.5" />

<ListView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.5" />

</LinearLayout>

关于android - 使同一屏幕上的 2 个 Android ListViews 具有相同的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18005785/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com