ANDROID:用2个列表视图将屏幕分成2个相等的部分

ANDROID:用2个列表视图将屏幕分成2个相等的部分,android,listview,android-layout,Android,Listview,Android Layout,我正在尝试将两个列表视图放入布局中。问题是我事先不知道每个listview的大小。第一个listview可以有几个项目0、1、2,最多大约10个,第二个listview可以有很多项目,最多100个 我试图将两个ListView的权重都设置为1,但没有成功: =>如果第一个listview只有1个项目,第二个99个项目,您就看不到listview 1的第一个项目=>它相对于listview 2收缩得太多,以至于您看不到它 所以我现在考虑将屏幕分成两个相等的部分,不管每个listview的大小如何,

我正在尝试将两个列表视图放入布局中。问题是我事先不知道每个listview的大小。第一个listview可以有几个项目0、1、2,最多大约10个,第二个listview可以有很多项目,最多100个

我试图将两个ListView的权重都设置为1,但没有成功:

=>如果第一个listview只有1个项目,第二个99个项目,您就看不到listview 1的第一个项目=>它相对于listview 2收缩得太多,以至于您看不到它

所以我现在考虑将屏幕分成两个相等的部分,不管每个listview的大小如何,并将两个listview放在每个部分中。当然,它需要在任何设备上工作。。。那么,我如何捕获设备屏幕大小,将其一分为二,并强制listview大小适应屏幕的每一半呢

已经有人这么做了吗?是否有其他选项可以在同一布局上显示两个不同大小的ListView?我是否应该以某种方式使用scrollview?=>当用户到达第一个listview的末尾时,会出现第二个listview=>是否可能

谢谢你的帮助和建议


Hubert

尝试以软像素设置大小设备无关的大小-如50sp或100sp-我相信您会找到合适的大小

我只需将我的两个列表视图封装到两个单独的线性布局=>这两个线性布局的权重为1:

    <LinearLayout android:layout_weight="1" 
                    android:layout_height="fill_parent" 
                    android:layout_width="fill_parent">

                <ListView   android:id="@+id/ListView_NASDAQ100" 
                            android:layout_height="fill_parent" 
                            android:layout_width="fill_parent">

                </ListView>
    </LinearLayout>

<LinearLayout android:layout_weight="1" 
                android:layout_height="fill_parent" 
                android:layout_width="fill_parent">

            <ListView   android:id="@+id/ListView_from_52w_HIGHLOW" 
                        android:layout_height="fill_parent" 
                        android:layout_width="fill_parent">

            </ListView>
</LinearLayout>

创建父线性布局,定义一个权重和并将其分为两个不同的相对布局,每个权重等于总权重和的一半,因为在相对布局中,事情可以轻松而正确地进行管理。我希望这对您有用。

我将屏幕分为两个相等部分的意思是,上半部分和下半部分,而不是左/右部分。这对我来说不是一个有效的选项,因为我必须显示的项目已经定义。我不知道如何实现它,因为活动中的listview必须有一个id android:id/list,因为它是一个标识符,同一个活动中不能有两个类似的项目。有一个比我更聪明的人能够做到这一点。我已经让它工作了-在同一个活动中有两个lisviews不是ListActivity而是一个正常的活动=>看看道琼斯PRO=>屏幕新的52周高/低…如果你想看到这一点,这个应用程序被称为Android版的道琼斯,或Android版的纳斯达克100。。。选择52周高/低按钮以查看此分割屏幕!干杯,H。对于其他遇到这个问题的人来说,Eclipse v15的ADT插件似乎不能正确处理这个问题,但它在实际的手机上运行时确实有效,我想,在模拟器上运行时也是如此。这个答案离正确的方向还很远。。。使用sp对所有屏幕大小有何帮助?事实上,你不可能找到合适的装置来用这个把屏幕一分为二……但是我想要垂直方向,我该怎么办@穆罕默德·泽尚你所说的垂直方向是什么意思。你能再解释一下吗?我做到了…:
<LinearLayout
        android:id="@+id/ListView_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:weightSum="1" >

        <RelativeLayout
            android:id="@+id/rl_ListView1"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="0.5" >

            <ListView
                android:id="@+id/lv1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >
                </ListView>
        </RelativeLayout>

        <RelativeLayout
            android:id="@+id/rl_ListView2"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="0.5" >

            <ListView
                android:id="@+id/lv2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >
            </ListView>

        </RelativeLayout>
    </LinearLayout>