【发布时间】:2014-03-09 10:35:00
【问题描述】:
我在列表视图中显示我的数据库中的记录时遇到问题。当我启动我的应用程序时,它在开始时崩溃。这是我的代码:
dbHelper = new DbAdapter(MainActivity.this);
dbHelper.open();
cursor = dbHelper.fetchAllContacts();
startManagingCursor(cursor);
String[] columns = new String[] {
DbAdapter.KEY_NAME,
DbAdapter.KEY_SURNAME,
DbAdapter.KEY_SEX,
DbAdapter.KEY_BIRTH_DATE
};
int[] to = new int[] {
R.id.name,
R.id.cognome,
R.id.sesso,
R.id.datanascita,
};
SimpleCursorAdapter dataAdapter = new SimpleCursorAdapter(
MainActivity.this, R.layout.contatti,
cursor,
columns,
to,
0);
ListView listView = (ListView) findViewById(R.id.listView1);
listView.setAdapter(dataAdapter);
cursor.close();
dbHelper.close();
这是我的列表视图布局:
contatti.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="6dip" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Nome : "
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:text="Cognome : "
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/textView2"
android:text="Sesso : "
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView3"
android:layout_below="@+id/textView3"
android:text="Data nasc. : "
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView3"
android:layout_alignBottom="@+id/textView3"
android:layout_toRightOf="@+id/textView3"
android:text="TextView" />
<TextView
android:id="@+id/cognome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView4"
android:layout_alignBottom="@+id/textView4"
android:layout_alignLeft="@+id/continent"
android:text="TextView" />
<TextView
android:id="@+id/sesso"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView3"
android:layout_toRightOf="@+id/textView3"
android:text="TextView" />
<TextView
android:id="@+id/datanascita"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView2"
android:layout_alignLeft="@+id/name"
android:text="TextView" />
</RelativeLayout>
【问题讨论】:
-
请从 logcat 和
fetchAllContacts()实现中发布异常堆栈跟踪。 -
我没有来自 logcat 的堆栈跟踪,但我在手机上尝试了我的应用程序。
-
将你的手机用usb连接到电脑,然后运行你的应用程序并在此处发布logcat
标签: android sqlite listview crash simplecursoradapter