FindViewById dans le fragment

Existe-t-il un moyen de trouver une vue par identifiant dans le cadre d'un fragment? J'utilise une série de fragments pour créer une liste spécialisée. Les fragments sont chargés à partir d'une mise en page, de sorte que leurs widgets ont tous les mêmes identifiants.

Je suppose que je peux trouver une façon de donner à chaque widget un identifiant personnalisé lors de la création (ou juste après). Cependant, ce serait beaucoup plus agréable si je pouvais en quelque sorte limiter FindViewById à la portée du fragment.

  • Y at-il un type long dans SQLite?
  • Plugin avec id 'com.google.gms.google-services' introuvable
  • Impossible d'extraire la base de données, même après chmod 777 sur mon appareil
  • Comment l'application Whatsapp de l'utilisateur détecte-t-elle un changement dans l'image de profil de son contact?
  • Existe-t-il un point d'activité avec un fragment?
  • Comment utiliser Google Login API avec Cordova / Phonegap
  • Réinitialiser les réalisations / classement de ma application Android
  • Comment implémenter la fonctionnalité .get avec FutureTask ou BackgroundTask à l'aide d'Android?
  • Obtiens des enfants ListView qui ne sont pas en vue
  • Quelle est la différence entre gnustl et stlport dans android ndk development?
  • Refresh / Recharger la référence de la base de données dans ContentProvider personnalisé après la restauration
  • SQLite FTS3 simule LIKE somestring%
  • 5 Solutions collect form web for “FindViewById dans le fragment”

    private View myFragmentView; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { myFragmentView = inflater.inflate(R.layout.myLayoutId, container, false); myView = myFragmentView.findViewById(R.id.myIdTag) return myFragmentView; } 

    De l'intérieur du fragment:

     getView().findViewById(R.id.your_view); 

    De l'activité jointe:

     getFragmentManager().findFragmentByTag("YourFragmentTag").getView().findViewById(R.id.your_view); 

    ou

     getFragmentManager().findFragmentById(R.id.your_fragment).getView().findViewById(R.id.your_view); 

    Vous pouvez le faire par getView().findViewById()

    Oui, il y a un moyen, vous pouvez le trouver via rootView. Trouvez d'abord la racine de votre fragment rootView=getView(); Puis utilisez rootView.findViewById(...);

      public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootview=null; rootview=inflater.inflate(R.layout.fragment_web_view, container, false); ListView lv = (ListView)rootview.findViewById(android.R.id.list); return rootview; // Inflate the layout for this fragment //return inflater.inflate(R.layout.fragment_web_view, container, false); } 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.