ListView控件与多行

问题描述:

在我的应用我在ListView显示数据库。在那我有2列。我将从数据库检索数据并显示在ListView中。我的问题是在数据库显示1项应得下一行并打印下一个条目后,但它不是这样的,它是在逐列下去。请帮帮我。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> 

问题:

问题是你已经给出了两列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}; 

解决方案:

添加另一列或从除去任何TextView的ID,这意味着的String[] from长度和应该是相同的。