현재 스피너를 이용해서 DB에 잇는 데이터를 리스트뷰에 뿌려주고 있습니다.

헌데 다른 탭을 갔다가 다시 돌아오면 업데이트가 되어야 하기 때문에 onResume에 리쿼리를 호출하고 있습니다.

Adapter 문제인지 탭간 전환시 다른 메서드를 호출해줘야 하는지 잘 모르겟어요.

도움 부탁드립니다.

OnResume(){
Adapter.getCursor().requery(); //이것만 호출하면 널포인터 오류를 뿜어내고 있어요.
}

public class History extends Activity {
 private static final String TAG = "History";
 private DBHelper mHelper;
 ListView list;
 Cursor cursor;
 SimpleCursorAdapter Adapter;
 ImageView image;
 ArrayAdapter<CharSequence> adspin;
 
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.history_main);
  list = (ListView)findViewById(R.id.list);
  
  image = new ImageView(this); // (1)
  image.setImageResource(R.drawable.no_data);
  
  mHelper = new DBHelper(this);
  //cursor = mHelper.call_cur(0);
  
  Spinner spin = (Spinner)findViewById(R.id.myspinner);
  spin.setPrompt("보기모드를 선택하세요.");
  adspin = ArrayAdapter.createFromResource(this, R.array.view_select, 
    android.R.layout.simple_spinner_item);
  adspin.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  spin.setAdapter(adspin);
  spin.setOnItemSelectedListener(new OnItemSelectedListener() {
   public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
    if(position==0){
     cursor = mHelper.call_cur(0);  //모두
     startManagingCursor(cursor);
     Adapter = new SimpleCursorAdapter(History.this, 
       R.layout.cus_list,
       cursor, new String[] { "_id", "Time", "Location", "Distance", "Temp"}, 
       new int[] { R.id.text1, R.id.text2, R.id.text3,R.id.text4,R.id.text5});          
           if(cursor.getCount()!=0){
            list.setAdapter(Adapter);
           }else{
            //setContentView(image);
           }
    }else if(position==1){
     cursor = mHelper.call_cur(1);  //GPS
     startManagingCursor(cursor);
     Adapter = new SimpleCursorAdapter(History.this, 
       R.layout.cus_gps,
       cursor, new String[] { "_id", "Time", "Location", "Distance"}, 
       new int[] { R.id.text1, R.id.text2, R.id.text3,R.id.text4});
     if(cursor.getCount()!=0){
            list.setAdapter(Adapter);
           }else{
            //setContentView(image);
           }          
    }else{
     cursor = mHelper.call_cur(2);  //Temp
     startManagingCursor(cursor);
     Adapter = new SimpleCursorAdapter(History.this, 
       R.layout.cus_temp,
       cursor, new String[] { "_id", "Time", "Temp"}, 
       new int[] { R.id.text1, R.id.text2, R.id.text5});
     if(cursor.getCount()!=0){
            list.setAdapter(Adapter);
           }else{
            //setContentView(image);
           }
    }
   }
   public void onNothingSelected(AdapterView<?> parent) {
   }
  });
 }
     
     @Override
     public void onResume(){
      super.onResume();
      Log.i(TAG, "onResume()");
   //Adapter.getCursor().requery();
     }
}





오류

09-07 14:30:46.547: ERROR/AndroidRuntime(253): FATAL EXCEPTION: main
09-07 14:30:46.547: ERROR/AndroidRuntime(253): java.lang.RuntimeException: Unable to resume activity {exam.Kidnaping/.History}: java.lang.NullPointerException
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3128)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:138)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:651)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.widget.TabHost.setCurrentTab(TabHost.java:323)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.widget.TabHost$2.onTabSelectionChanged(TabHost.java:129)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.widget.TabWidget$TabClickListener.onClick(TabWidget.java:453)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.view.View.performClick(View.java:2408)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.view.View$PerformClick.run(View.java:8816)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.os.Handler.handleCallback(Handler.java:587)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.os.Handler.dispatchMessage(Handler.java:92)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.os.Looper.loop(Looper.java:123)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.ActivityThread.main(ActivityThread.java:4627)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at java.lang.reflect.Method.invokeNative(Native Method)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at java.lang.reflect.Method.invoke(Method.java:521)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at dalvik.system.NativeStart.main(Native Method)
09-07 14:30:46.547: ERROR/AndroidRuntime(253): Caused by: java.lang.NullPointerException
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at .History.onResume(History.java:95)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1149)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.Activity.performResume(Activity.java:3823)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3118)
09-07 14:30:46.547: ERROR/AndroidRuntime(253):     ... 17 more