在gridview中显示大型数据库(android)

时间:2016-08-22 14:26:10

标签: android gridview horizontal-scrolling vertical-scrolling

这是我想在andorid中创建的数据库应用程序的xml代码。 数据库表很大,包含11列,我希望它使用水平滚动和垂直滚动显示在一个视图中......在下面的代码中我使用了表格布局,但为此,我将不得不编写大量的后端代码显示数据..

我想使用gridview而不是我使用的表格布局......它应该可以垂直和水平滚动。任何人都可以帮我这个吗?

以前我使用过listview,但问题是在列表视图中没有办法维护列排列......

<?xml version="1.0" encoding="utf-8"?>

                    <ScrollView
                        android:layout_width="match_parent"
                        android:layout_height="298dp"
                        android:id="@+id/scrollView5" >

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

                            <HorizontalScrollView
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:id="@+id/horizontalScrollView4" >

                                <TableLayout
                                    android:layout_width="match_parent"
                                    android:layout_height="wrap_content">

                                    <TableRow
                                        android:layout_width="match_parent"
                                        android:layout_height="match_parent">

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="ID"
                                            android:id="@+id/txtview001" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Date"
                                            android:id="@+id/txtview002" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Item"
                                            android:id="@+id/txtview003" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Shade"
                                            android:id="@+id/txtview004" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Debtor"
                                            android:id="@+id/txtview005" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Price"
                                            android:id="@+id/txtview006" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Count"
                                            android:id="@+id/txtview007" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Quantity"
                                            android:id="@+id/txtview008" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="%comm"
                                            android:id="@+id/txtview009" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Total"
                                            android:id="@+id/txtview010" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Comm"
                                            android:id="@+id/txtview011" />

                                        <CheckBox
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:text="New CheckBox"
                                            android:id="@+id/checkBox" />

                                    </TableRow>

                                    <TableRow
                                        android:layout_width="match_parent"
                                        android:layout_height="match_parent" >

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa1" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa2" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa3" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa4" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa5" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa6" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa7" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa8" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa9" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa10" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/txtviewa11" />

                                        <CheckBox
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:text="New CheckBox"
                                            android:id="@+id/checkBox2" />
                                    </TableRow>

                                    <TableRow
                                        android:layout_width="match_parent"
                                        android:layout_height="match_parent" >

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView23" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView24" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView25" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView26" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView27" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView28" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView29" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView30" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView31" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView32" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView33" />

                                        <CheckBox
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:text="New CheckBox"
                                            android:id="@+id/checkBox3" />
                                    </TableRow>

                                    <TableRow
                                        android:layout_width="match_parent"
                                        android:layout_height="match_parent" >

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView34" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView35" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView36" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView37" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView38" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView39" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView40" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView41" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView42" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView43" />

                                        <TextView
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:textAppearance="?android:attr/textAppearanceLarge"
                                            android:text="Large Text"
                                            android:id="@+id/textView44" />

                                        <CheckBox
                                            android:layout_width="wrap_content"
                                            android:layout_height="wrap_content"
                                            android:text="New CheckBox"
                                            android:id="@+id/checkBox4" />
                                    </TableRow>                              

         </TableLayout>
        </HorizontalScrollView>
    </LinearLayout>
</ScrollView>

2 个答案:

答案 0 :(得分:0)

最后,我想出了

这是xml代码: -

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

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

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button3" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button4"
            android:layout_marginLeft="90dp" />
    </LinearLayout>

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="62dp"
        android:weightSum="1">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button5" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/editText"
            android:layout_weight="1.03" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button6"
            android:layout_marginLeft="0dp" />
    </LinearLayout>

    <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="303dp"
        android:id="@+id/horizontalScrollView4" >

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

            <GridView
                android:layout_width="1091dp"
                android:layout_height="300dp"
                android:layout_alignParentLeft="true"

                android:id="@+id/gridView"
                android:numColumns="11"
                 />
        </LinearLayout>
    </HorizontalScrollView>

答案 1 :(得分:0)

更好的方法是使用带有网格布局管理器的回收站视图。要处理垂直和水平滚动,您可以在ScrollView中使用Horizo​​ntalScrollView并将您的回收器视图保留在Horizo​​ntalScrollView中。回收站视图的优势在于它一次只会绘制一组有限的视图,这将是一个很好的性能黑客,并且使用适配器,您将能够轻松地处理和更新每个单元。我写了这个快速代码来说明这种滚动方法是如何工作的。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >

    <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

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

            <TableRow
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="5dip">

                <TextView
                    android:layout_width="400dp"
                    android:layout_height="wrap_content"
                    android:text="rxdcgvbhjn"
                    android:textSize="100dp"
                    />

                <Button
                    android:layout_width="400dp"
                    android:text="Column 2"
                    android:textSize="100dp"/>
            </TableRow>

            <TableRow
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="5dip">

                <TextView
                    android:layout_width="400dp"
                    android:layout_height="wrap_content"
                    android:text="rxdcgvbhjn"
                    android:textSize="100dp"
                    />

                <Button
                    android:id="@+id/button1"
                    android:layout_width="400dp"
                    android:text="Column 2"
                    android:textSize="100dp"/>
            </TableRow>

            <TableRow
                android:id="@+id/tableRow1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="5dip">

                <TextView
                    android:layout_width="400dp"
                    android:layout_height="wrap_content"
                    android:text="rxdcgvbhjn"
                    android:textSize="100dp"
                    />

                <Button
                    android:layout_width="400dp"
                    android:text="Column 2"
                    android:textSize="100dp"/>
            </TableRow>

            <TableRow
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="5dip">

                <TextView
                    android:layout_width="400dp"
                    android:layout_height="wrap_content"
                    android:text="rxdcgvbhjn"
                    android:textSize="100dp"
                    />

                <Button
                    android:layout_width="400dp"
                    android:text="Column 2"
                    android:textSize="100dp"/>
            </TableRow>


        </TableLayout>

    </HorizontalScrollView>
</ScrollView>