-1

Voici un code XML pour une application de base de données que je veux faire dans andorid. La table de base de données est grande et contient 11 colonnes, et je veux qu'elle affiche dans une vue en utilisant à la fois le défilement horizontal et le défilement vertical ... dans le code ci-dessous j'ai utilisé la disposition de table, mais pour cela code pour afficher les données ..affichant une base de données de grande taille dans gridview (android)

Je veux utiliser gridview au lieu de la disposition de la table que j'ai utilisé ... et il devrait être scrollable verticalement et horizontally.can quelqu'un peut-il m'aider sur ce ??

Auparavant, j'utilisé listview, mais le problème est que, compte tenu de la liste il n'y a aucun moyen de maintenir arrangement de colonne ...

<?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

double possible de [Android GridView avec deux Scrolbars horizontales et verticales en même temps] (http://stackoverflow.com/questions/16299633/android-gridview-with-both-horizontal-and-vertical- scrolbars-at-the-same-time) – jannej

Répondre

0

Enfin, j'ai compris

ici est le code 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> 
0

Une meilleure façon serait d'utiliser un recycleur vie w avec un gestionnaire de disposition de la grille. Pour gérer le défilement vertical et horizontal, vous pouvez utiliser un HorizontalScrollView à l'intérieur d'un ScrollView et conserver votre vue recycleur dans HorizontalScrollView. L'avantage avec la vue recycleur serait qu'elle ne dessine qu'un nombre limité de vues à la fois, ce qui sera un excellent hack de performance et avec un adaptateur, vous serez capable de gérer et de mettre à jour chaque cellule facilement. J'ai écrit ce code rapide pour montrer comment cette approche du défilement peut fonctionner.

<?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> 
+0

Qu'est-ce qu'une vue recycleur? pourquoi je n'ai pas ça dans mon studio android pallete ?? –

+0

La vue Recycleur est une meilleure version de la vue de liste qui supporte beaucoup d'optimisations et de fonctionnalités et c'est un standard d'utiliser la vue recycleur à la place si listview.Veuillez suivre les tutoriels sur la vue recycleur. https://realm.io/news/android-recycler-view/ – bpr10

+0

Veuillez ajouter la réponse si vous l'avez trouvé utile. – bpr10