我如何在match_parent布局下面设置ListView

时间:2018-10-03 11:48:54

标签: java android android-layout layout screen

mLayout:

ListView

我想将mChartView设置为match_parent(适合屏幕) 然后在mChartView下面添加ListView 但这只会显示mChartView

我尝试将固定大小设置为mChartView,并且ListView有效!但是我无法将mChartView设置为适合其他屏幕尺寸。

我的mChartView和使用ScrollView的ListView

(下面的代码有效,但由于固定大小,mChart不能匹配match_parent)

           <ScrollView
            android:id="@+id/scroll"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scrollbars="none"
            android:fillViewport="true">

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

                <TextView
                    android:id="@+id/tv_units"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dp"
                    android:layout_marginTop="30dp"
                    android:text="@string/label_data_baht"
                    android:textColor="@color/white"
                    android:textSize="16sp" />


                <LinearLayout
                    android:id="@+id/ll_chart"
                    android:layout_width="match_parent"
                    android:layout_height="400dp" // fixed size
                    android:layout_margin="10dp"
                    android:orientation="vertical">

                    <com.github.mikephil.charting.charts.BarChart
                        android:id="@+id/mBarChart"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent">

                    </com.github.mikephil.charting.charts.BarChart>

                </LinearLayout>

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

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:gravity="right">

                        <ImageView
                            android:layout_width="18dp"
                            android:layout_height="8dp"
                            android:layout_marginRight="5dp"
                            android:layout_marginTop="5dp"
                            android:background="@drawable/bg_ic_saving" />

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/tv_saving"
                            android:textColor="#ffffff"
                            android:textSize="13sp" />

                        <ImageView
                            android:layout_width="18dp"
                            android:layout_height="8dp"
                            android:layout_marginLeft="22dp"
                            android:layout_marginRight="5dp"
                            android:layout_marginTop="5dp"
                         android:background="@drawable/bg_ic_expense"/>

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginRight="33dp"
                            android:text="@string/tv_expense"
                            android:textColor="#ffffff"
                            android:textSize="13sp" />

                    </LinearLayout>

                </RelativeLayout>

                <ListView
                    android:id="@+id/BillListYearly"
                    android:layout_width="match_parent"
                    android:layout_height="400dp"  // fixed size
                    android:layout_marginTop="20dp"
                    android:layout_marginLeft="3dp"
                    android:layout_marginRight="3dp"
                    android:layout_gravity="center_horizontal"
                    android:focusable="false">

                </ListView>

            </LinearLayout>

        </ScrollView>

谢谢。

(很抱歉,我的英语水平不佳)

1 个答案:

答案 0 :(得分:0)

将属性android:layout_weight="1"添加到图表视图的 LinearLayout

也将其高度属性设置为 match_parent

设置您的 ListView match_parent