web-dev-qa-db-fra.com

Obtenez le contexte d'application en fragment dans Android?

J'ai stocké des données dans une classe globale en utilisant le contexte d'application en une activité. Plus tard, je dois récupérer ces valeurs dans un fragment. J'ai fait quelque chose comme ça pour stocker dans Global Class.

AndroidGlobalClass  AGC = ((AndroidGlobalClass) getApplicationContext());
AGC.setUser_access("XYZ");
AGC.setFirst_name("ABC");

Et dans le manifeste j'ai fait:

<application
    Android:name=".AndroidGlobalClass"
    Android:theme="@style/AppTheme" >
    <activity
       Android:name="abc.SignInActivity"
       Android:label="@string/app_name" >
       <intent-filter>
          <action Android:name="Android.intent.action.MAIN" />
          <category Android:name="Android.intent.category.LAUNCHER" />
       </intent-filter>
    </activity>
</application>

Maintenant, quand j'essaie d'obtenir le contexte d'application en utilisant ceci ... je ne comprends pas le contexte ...

AndroidGlobalClass  AGC = ((AndroidGlobalClass) getApplicationContext());

C'est mon activité de fragment 

public class Fragment_NewsFeed extends Fragment {
    public Fragment_NewsFeed() {
    }

    RestImplimentationMethods RIM;
    AndroidGlobalClass AGC;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_newsfeed, container, false);
        return rootView;
    }
}
42
NRahman

Vous pouvez obtenir le contexte en utilisant getActivity().getApplicationContext();

145
SalGad

Utilisation 

getActivity (). getApplicationContext ()

pour obtenir le contexte dans un fragment

14
Aakash Goyal

Essayez d'utiliser getActivity(); Cela résoudra votre problème.

3
Ashwin S Ashok

vous pouvez définir une variable globale:

private Context globalContext = null;

et dans la méthode onCreate, initialisez-le:

globalContext = this.getActivity();

Et par là, vous pouvez utiliser la variable "globalContext" dans toutes vos fonctions/méthodes de fragment.

Bonne chance.

3
Nabz

Ajouter ceci à onCreate 

// Getting application context
        Context context = getActivity();
0
Joolah