Marco O.
- Forum-Beiträge: 2
30.03.2011, 18:52:50 via Website
30.03.2011 18:52:50 via Website
Hallo,
ich habe eine ListActivity. Diese wird mit Daten aus der SQLite Datenbank gefüllt. Hierbei wird der SimpleCursorAdapter als listAdapter gesetzt.
Dieser Activity ist es auch erlaubt zu suchen. Dabei wird in der Datenbank gesucht. Die Suche soweit funktioniert, nur werden mir die Suchergebnisse nicht angezeigt, sondern ich bekomme eine NullPointerException geworfen.
Die Exception wird in dieser Zeile geworfen: (im Quelltext wurden unwichtige Methoden wie Opzionsmenü weggelassen)
Der CursorCount ist > 0.
Jemand ne Idee an was das liegen könnte?
ich habe eine ListActivity. Diese wird mit Daten aus der SQLite Datenbank gefüllt. Hierbei wird der SimpleCursorAdapter als listAdapter gesetzt.
Dieser Activity ist es auch erlaubt zu suchen. Dabei wird in der Datenbank gesucht. Die Suche soweit funktioniert, nur werden mir die Suchergebnisse nicht angezeigt, sondern ich bekomme eine NullPointerException geworfen.
103-30 16:29:43.381: ERROR/AndroidRuntime(546): java.lang.RuntimeException: Unable to start activity ComponentInfo{package/package.MagazineViewController}: java.lang.NullPointerException
203-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
303-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
403-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
503-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
603-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.os.Handler.dispatchMessage(Handler.java:99)
703-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.os.Looper.loop(Looper.java:123)
803-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.main(ActivityThread.java:4627)
903-30 16:29:43.381: ERROR/AndroidRuntime(546): at java.lang.reflect.Method.invokeNative(Native Method)
1003-30 16:29:43.381: ERROR/AndroidRuntime(546): at java.lang.reflect.Method.invoke(Method.java:521)
1103-30 16:29:43.381: ERROR/AndroidRuntime(546): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
1203-30 16:29:43.381: ERROR/AndroidRuntime(546): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
1303-30 16:29:43.381: ERROR/AndroidRuntime(546): at dalvik.system.NativeStart.main(Native Method)
14
1503-30 16:29:43.381: ERROR/AndroidRuntime(546): Caused by: java.lang.NullPointerException
1603-30 16:29:43.381: ERROR/AndroidRuntime(546): at package.MagazineViewController.doSearch(MagazineViewController.java:111)
1703-30 16:29:43.381: ERROR/AndroidRuntime(546): at package.MagazineViewController.onCreate(MagazineViewController.java:40)
1803-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
1903-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
2003-30 16:29:43.381: ERROR/AndroidRuntime(546): ... 11 more
203-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
303-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
403-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
503-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
603-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.os.Handler.dispatchMessage(Handler.java:99)
703-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.os.Looper.loop(Looper.java:123)
803-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.main(ActivityThread.java:4627)
903-30 16:29:43.381: ERROR/AndroidRuntime(546): at java.lang.reflect.Method.invokeNative(Native Method)
1003-30 16:29:43.381: ERROR/AndroidRuntime(546): at java.lang.reflect.Method.invoke(Method.java:521)
1103-30 16:29:43.381: ERROR/AndroidRuntime(546): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
1203-30 16:29:43.381: ERROR/AndroidRuntime(546): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
1303-30 16:29:43.381: ERROR/AndroidRuntime(546): at dalvik.system.NativeStart.main(Native Method)
14
1503-30 16:29:43.381: ERROR/AndroidRuntime(546): Caused by: java.lang.NullPointerException
1603-30 16:29:43.381: ERROR/AndroidRuntime(546): at package.MagazineViewController.doSearch(MagazineViewController.java:111)
1703-30 16:29:43.381: ERROR/AndroidRuntime(546): at package.MagazineViewController.onCreate(MagazineViewController.java:40)
1803-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
1903-30 16:29:43.381: ERROR/AndroidRuntime(546): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
2003-30 16:29:43.381: ERROR/AndroidRuntime(546): ... 11 more
1public class MagazineViewController extends ListActivity {
2
3DatabaseHelper dbHelper;
4SimpleCursorAdapter adapter = null;
5Cursor c;
6
7@Override
8public void onCreate(Bundle savedInstanceState) {
9 super.onCreate(savedInstanceState);
10
11 requestWindowFeature(Window.FEATURE_NO_TITLE);
12
13 final Intent queryIntent = getIntent();
14 final String queryAction = queryIntent.getAction();
15 if (Intent.ACTION_SEARCH.equals(queryAction)) {
16 String searchKeywords = queryIntent.getStringExtra(SearchManager.QUERY);
17 doSearch(searchKeywords);
18 }
19
20 dbHelper=new DatabaseHelper(this);
21
22 c = dbHelper.getAllMagazines();
23 startManagingCursor(c);
24
25 Log.d("CURSOR COUNT", ""+c.getCount());
26
27 adapter = new SimpleCursorAdapter(this,
28 android.R.layout.simple_list_item_2, c,
29 new String[] {"editionName", "magazineName"},
30 new int[] {android.R.id.text1, android.R.id.text2});
31
32 this.setListAdapter(adapter);
33}
34
35private void doSearch(String search) {
36 dbHelper=new DatabaseHelper(this);
37
38 Cursor cur = dbHelper.searchEditions(search);
39 startManagingCursor(cur);
40
41 Log.d("CURSOR2 COUNT", ""+cur.getCount());
42
43 adapter.changeCursor(cur);
44}
2
3DatabaseHelper dbHelper;
4SimpleCursorAdapter adapter = null;
5Cursor c;
6
7@Override
8public void onCreate(Bundle savedInstanceState) {
9 super.onCreate(savedInstanceState);
10
11 requestWindowFeature(Window.FEATURE_NO_TITLE);
12
13 final Intent queryIntent = getIntent();
14 final String queryAction = queryIntent.getAction();
15 if (Intent.ACTION_SEARCH.equals(queryAction)) {
16 String searchKeywords = queryIntent.getStringExtra(SearchManager.QUERY);
17 doSearch(searchKeywords);
18 }
19
20 dbHelper=new DatabaseHelper(this);
21
22 c = dbHelper.getAllMagazines();
23 startManagingCursor(c);
24
25 Log.d("CURSOR COUNT", ""+c.getCount());
26
27 adapter = new SimpleCursorAdapter(this,
28 android.R.layout.simple_list_item_2, c,
29 new String[] {"editionName", "magazineName"},
30 new int[] {android.R.id.text1, android.R.id.text2});
31
32 this.setListAdapter(adapter);
33}
34
35private void doSearch(String search) {
36 dbHelper=new DatabaseHelper(this);
37
38 Cursor cur = dbHelper.searchEditions(search);
39 startManagingCursor(cur);
40
41 Log.d("CURSOR2 COUNT", ""+cur.getCount());
42
43 adapter.changeCursor(cur);
44}
Die Exception wird in dieser Zeile geworfen: (im Quelltext wurden unwichtige Methoden wie Opzionsmenü weggelassen)
1adapter.changeCursor(cur);
Der CursorCount ist > 0.
Jemand ne Idee an was das liegen könnte?
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.