0

在我的应用程序中,我将数据库显示在ListView. 在那我有2列。我将从数据库中检索数据并显示在ListView. 我的问题出在数据库中,在显示第一个条目后它应该进入下一行并打印下一个条目,但事实并非如此,它是按列显示的。请帮我。

我的代码如下:

ListView lv=(ListView)findViewById(R.id.listView1);  
db.open();
Cursor c = db.getAllTitles();
startManagingCursor(c); 
System.out.println("cursor="+c.getCount());
String[] from = new String[] { db.KEY_INCOME,db.KEY_INCOME};
int[] to = new int[] {R.id.text1 ,R.id.text2,R.id.text3};
SimpleCursorAdapter notes =
      new SimpleCursorAdapter(this, R.layout.columnview, c, from, to);
//    System.out.println("notes="+notes.getCount());
//    setListAdapter(notes);    
lv.setAdapter(notes);    
System.out.println("subbu");
//    System.out.print("tot="+db.add().toString());
String sumtotal=  db.add();      

我的 main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal">    
    <TextView android:id="@+id/text3"   
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <ListView
        android:id="@+id/listView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 
        android:drawSelectorOnTop="false" >
    </ListView>  
</LinearLayout>

我的 column.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:paddingTop="4dip"
    android:paddingBottom="6dip"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <TextView android:id="@+id/text1"       
        android:textSize="18sp"
        android:layout_width="30dip"
        android:layout_height="wrap_content"/>
    <TextView android:id="@+id/text2"
        android:textSize="18sp"
        android:layout_width="110dip"
        android:layout_height="wrap_content" 
        android:layout_marginLeft="100dp"
        android:layout_weight="1"/>
    <TextView android:id="@+id/text3"       
        android:textSize="18sp"
        android:layout_width="30dip"
        android:layout_height="wrap_content"/>
</LinearLayout>
4

1 回答 1

0

问题:

问题是您给出了两列 db 和三列TextView这里

String[] from = new String[] { db.KEY_INCOME,db.KEY_INCOME};
int[] to = new int[] {R.id.text1 ,R.id.text2,R.id.text3};

解决方案:

添加另一列或从中删除任何TextViewid int[] to,这意味着 和 的长度String[] from应该int[] to相同。

于 2012-07-09T09:50:53.157 回答