在我的应用程序中,我在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>
答案 0 :(得分: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};
<强>解决方案:强>
添加其他列或从TextView
中删除所有int[] to
的ID,即String[] from
和int[] to
的长度应相同。