【发布时间】:2015-02-14 11:22:13
【问题描述】:
我遇到了以下问题:
我创建了一个 SQL 数据库,现在尝试将它与我的 ListViewActivity 连接,以便在布局中显示它。但是当我运行模拟器时,ListView 不显示任何内容。我希望有人能尽快帮助我:)
我的 ListViewActivity 的代码:
import java.util.ArrayList;
import com.example.fotooh2.R;
import com.example.fotooh2.DatabaseHandler;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class ListViewActivity extends Activity {
public ListView listView1;
public static ArrayList<String> ArrayofPositions = new ArrayList<String>();
public void onCreate(Bundle savedInstanceState) { //
super.onCreate(savedInstanceState); //
setContentView(R.layout.suche_liste); //
DatabaseHandler db = new DatabaseHandler(this);
db.getAllPositionstoList();
Log.d("FirstScreenActivity", "ListView bis hier!"); // LOG Fehlersuche
listView1 = (ListView) findViewById(R.id.listView1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.listview_item_row, ArrayofPositions);
listView1.setAdapter(adapter);
Log.d("FirstScreenActivity", "ListView Läuft!"); // LOG Fehlersuche
}
}
我的 listview_item_row 的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp">
<ImageView android:id="@+id/imgIcon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_marginRight="15dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
<TextView android:id="@+id/txtTitle"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
</LinearLayout>
“suche_liste”的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF">
<ListView
android:id="@+id/listView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
DatabaseHandler 中的代码:
public List<Position> getAllPositionstoList() {
List<Position> PositionsList = new ArrayList<Position>();
// Select All Query
String selectQuery = "SELECT * FROM " + TABLE_POSITIONS;
SQLiteDatabase data = this.getWritableDatabase();
Cursor cursor = data.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
Position position = new Position();
String name = "Name:" + cursor.getString(1);
ListViewActivity.ArrayofPositions.add(name);
PositionsList.add(position);
} while (cursor.moveToNext());
}
// return Positions-Liste
return PositionsList;
}
}
【问题讨论】:
标签: android sql database listview android-sqlite