2014-04-04 58 views
0

在我的程序中我使用選項卡活動。在一個位於列表視圖的選項卡中,我嘗試從我的sqlite數據庫中獲取數據到該列表視圖。我沒有在代碼中發現錯誤,但我的列表視圖是空的。 有片段代碼:空ListView android sqlite

public static class DummySectionFragment extends Fragment implements LoaderCallbacks<Cursor>{ 

    public static final String ARG_SECTION_NUMBER = "section_number"; 
    public DummySectionFragment() { 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.activity_tracker, 
       container, false); 
     View v = inflater.inflate(R.layout.activity_tracker, 
       container, false); 
     createList(); 
     db = new DB(act); 
     db.open(); 
     String[] from = new String[] {DB.COLUMN_NAME, DB.COLUMN_TIME}; 
     int[] to = new int[] { R.id.tvTextName, R.id.tvText_time}; 

     Cursor cursor = db.getAllData(); 

     scAdapter = new SimpleCursorAdapter(getActivity(), R.layout.item, cursor, from, to, 0); 
     lvData = (ListView) v.findViewById(R.id.lvData); 
     lvData.setAdapter(scAdapter); 
     return rootView; 
    } 

    public void createList(){ 
    } 

    @Override 
    public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) { 
     // TODO Auto-generated method stub 
     return null; 
    } 

    @Override 
    public void onLoadFinished(Loader<Cursor> arg0, Cursor arg1) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onLoaderReset(Loader<Cursor> arg0) { 
     // TODO Auto-generated method stub 

    } 
} 
+0

這是一個愚蠢的問題;但我們必須在這裏涵蓋所有的基礎。那麼,數據庫中是否有數據? – DrkStr

+0

是的10個元素 – kolodach

回答

0

你沒有正確使用你的類,它實現LoaderCallbacks。你正試圖做你的數據庫調用,並檢索你的onCreateView()方法中的光標。這完全破壞了LoaderCallbacks實現的目的。

做一些Google搜索並找到一些關於如何正確執行此操作的教程。另外,請看官方Android Documentation for LoaderManager.LoaderCallbacks

這裏有一些讓你下手:

http://www.androiddesignpatterns.com/2012/07/understanding-loadermanager.html http://www.grokkingandroid.com/using-loaders-in-android/