android fragments getArguments() retourne la valeur null
getArguments() retourne la valeur null!
code de l'activité:
if (savedInstanceState == null) {
//During initial setup, plug in the details fragment.
FlightListFragment listFragment =
FlightListFragment.newInstance(mSearchParams);
getSupportFragmentManager().beginTransaction().add(
android.R.id.content, listFragment).commit();
}
du fragment:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
savedInstanceState) {
mSearchParams =
getArguments().getParcelable(SearchResultsActivity.EXTRA_SEARCH_PARAMS);
return super.onCreateView(inflater, container, savedInstanceState);
}
et:
public static FlightListFragment newInstance(SearchParams sp) {
FlightListFragment f = new FlightListFragment();
Bundle b = new Bundle();
b.putParcelable(SearchResultsActivity.EXTRA_SEARCH_PARAMS, sp);
f.setArguments(b);
return f;
}
Mais je reçois toujours des NullPointerException ici: getArguments().
S'il vous plaît, m'expliquer ce que je fais de mal.
Merci!
ÉDITÉ:
J'ai trouvé que la méthode newInstance() est appelée après onCreateView, donc je l'ai déplacé le code de onCreate, mais la question n'a pas de l'éviter.
OriginalL'auteur rocknow | 2012-09-20
Vous devez vous connecter pour publier un commentaire.
Cela signifie pas d'arguments ont été fournis lorsque le fragment a été instancié...
vous pouvez vérifier si des arguments ont été fournis par faire quelque chose comme ça...
OK - j'ai mal lu votre question...
Est sp nulle au point de votre faire putParcelable?
OriginalL'auteur 0909EM