2015-04-10 3 views
2

J'essaie d'afficher une liste à partir d'une base de données SQLite dans un fragment. Je l'ai essayé en utilisant une activité et c'était un succès, mais en utilisant le fragment je ne peux pas le faire fonctionner en utilisant un fragment.Affichage d'un fragment android Données sqlite dans la liste

public class AppleFragment extends ListFragment { 

    /** An array of items to display in ArrayList */ 
    String apple_versions[] = new String[]{ 
     "Mountain Lion", 
     "Lion", 
     "Snow Leopard", 
     "Leopard", 
     "Tiger" 

    }; 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     /** Creating array adapter to set data in listview */ 
     ArrayAdapter<String> adapter = new ArrayAdapter<String> (getActivity().getBaseContext(), android.R.layout.simple_list_item_multiple_choice, apple_versions); 

     /** Setting the array adapter to the listview */ 
     setListAdapter(adapter); 

     return super.onCreateView(inflater, container, savedInstanceState); 
    } 

    @Override 
    public void onStart() { 
     super.onStart(); 

     /** Setting the multiselect choice mode for the listview */ 
     getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
    } 

} 

Ceci est juste un exemple, je veux le transformer en une liste SQLite et l'afficher dans un fragment.

+0

Une petite note: vous n'avez pas besoin d'appeler 'getActivity(). GetBaseContext()' où vous créez le 'ArrayAdapter', car' Activity' s'étend déjà de 'Context'. –

+0

Suivez la documentation de [This] (http://developer.android.com/reference/android/app/ListFragment.html). – Harry

+0

suite à la documentation, toujours pas réussie avec c'est là un exemple simple à suivre. aussi désolé pour la réponse tardive. – armani2811

Répondre

0
@Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
    super.onActivityCreated(savedInstanceState); 

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), 
     android.R.layout.simple_list_item_1, apple_versions); 
    setListAdapter(adapter); 
    } 

Ne pas utiliser onCreateView, utilisez onActivityCreated ou méthode onViewCreated du fragment pour charger la liste.

+0

utilisé la méthode onViewCreated mais pas capable de remplir la liste des fragments de la base de données sqlite à la recherche d'un exemple simple s'il y en a un disponible. – armani2811