Comment obtenir le point de vue d'un Fragment à l'extérieur de OnCreateView()

J'ai un Fragment avec un TableLayout. Les données de la table à partir d'un db SQLite. La db SQLite est rempli à partir d'un service web RESTful dans un AsyncTask dans le MainActivity. Le Fragment doit attendre que la tâche à effectuer avant le remplissage de la table. Le Fragment est à l'écoute de la tâche onPostExecute() méthode à appeler. Lorsqu'elle l'est, la méthode onLoadAndStoreComplete() dans le Fragment est appelé. Tout cela fonctionne.

J'ai besoin d'obtenir une vue d'un TableLayout à l'extérieur de la OnCreateView() méthode d'un Fragment. Si je pouvais obtenir le point de Vue du fragment dans onLoadAndStoreComplete qui allait m'amener là.

Même code que voici.
J'ai mContext de la MainActivity, mais qui n'a pas de getView() méthode associée.

J'ai essayé:
- un membre de la classe rootView et l'affectation dans onCreateView(), mais dans onLoadAndStoreComplete(), il est nul.
- un membre de la classe tableLayout et l'affectation dans onCreateView(), mais dans onLoadAndStoreComplete(), il est nul.
- l'appel de cette.getView() de nouveau dans onLoadAndStoreComplete(), mais elle renvoie null.
- en appelant le système de gonflage à l'intérieur de onLoadAndStoreComplete(), qui fonctionne bien, mais alors je ne sais pas quoi utiliser pour le récipient dans le .inflate() appel

Je ne comprends pas pourquoi le membre de la classe des valeurs de rootView et tableLayout sont nulles dans onLoadAndStoreComplete()

public class MyFragment extends Fragment implements OnLoadAndStoreCompleteListener {

private TableLayout tableLayout;
private View rootView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,  Bundle savedInstanceState) {
        mContext = this.getActivity();
        rootView = inflater.inflate(R.layout.fragment_permits, container, false); //this works
        tableLayout = (TableLayout) rootView.findViewById(R.id.main_table); //and this
        ...
    }

    @Override
    public void onLoadAndStoreComplete() {

       //rootView is null, ie not remembered from OnCreateView

        View view =  getView(); //null

        LayoutInflater inflater = LayoutInflater.from(getActivity());
      rootView = inflater.inflate(R.layout.fragment_permits, container, false); //container? don't know what it should be

        //tableLayout is null
        tableLayout.addView(tableRow, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
    }
    ...
}
Qu'est-ce que OnLoadAndStoreCompleteListener et quand on l'appelle? Ne peut pas trouver dans l'API Android
Jamais entendu parler de onLoadAndStoreComplete() êtes-vous sûr d'en respectant le cycle de vie de la Fragment? Si vous serait alors getView() ne serait pas de retour null...
Essaye également d'accéder à une View à partir d'un Fragment à l'extérieur de ladite Fragment est vraiment mauvaise conception... je vous suggère de repenser ce que vous voulez faire et d'essayer d'une manière plus abstraite de la solution.
Si vous regardez à la question précédente je lien, vous comprendrez onLoadAndStoreCompleteListener(). Je ne cherche pas à accéder à la Vue à l'extérieur du Fragment, mais plutôt, à l'extérieur de OnCreateView()
Votre question doit contenir toutes les informations nécessaires pour y répondre. Vous ne pouvez pas lier à une autre question qui explique le code de cette question.

OriginalL'auteur Al Lelopath | 2015-04-13