Как показать данные из базы данных sqlite с помощью listview
Я пытаюсь заполнить listView из базы данных sqlite в android с помощью адаптера CustomCursor. Проблема в том, что мой listView ничего не показывает, когда я запускаю программу. Отображается только пустой список.
Что я уже пробовал:
package com.pass; import android.app.ProgressDialog; import android.database.Cursor; import android.os.AsyncTask; import android.os.Bundle; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CursorAdapter; import android.widget.ListView; /** * A simple {@link Fragment} subclass. */ public class SiteFragment extends Fragment { ListView allSites; ProgressDialog progressDialogue; Cursor cursor; public SiteFragment() { // Required empty public constructor } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment View view = inflater.inflate(R.layout.fragment_site, container, false); allSites = (ListView) view.findViewById(R.id.LIST_SITES); SiteCursorAdapter adapter = new SiteCursorAdapter(getActivity(), cursor); allSites.setAdapter(adapter); return view; } @Override public void onStart() { super.onStart(); new FetchSitesAsynch().execute(); } private class FetchSitesAsynch extends AsyncTask<Void, Void, Void>{ @Override protected void onPreExecute() { super.onPreExecute(); progressDialogue = new ProgressDialog(getActivity()); progressDialogue.setTitle("Retrieving Sites Info"); progressDialogue.setMessage("Please Wait..."); progressDialogue.setCancelable(true); progressDialogue.setIndeterminate(true); progressDialogue.show(); } @Override protected Void doInBackground(Void... params) { Database database = new Database(getActivity()); //database.getAll(); cursor = database.getAllSitesInfo(); Log.d("Site Fetched", "Note"); return null; } @Override protected void onProgressUpdate(Void... values) { super.onProgressUpdate(values); } @Override protected void onPostExecute(Void aVoid) { super.onPostExecute(aVoid); if (progressDialogue != null) progressDialogue.dismiss(); // close dialog } } }