recyclerview method getsupportfragmentmanager getapplicationcontext cannot android android-fragments findviewbyid

android - method - findViewById dentro de fragmento



getsupportfragmentmanager in fragment (5)

Desde adentro del Fragmento:

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

De la actividad adjunta:

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

o

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

¿Hay alguna forma de encontrar una vista por ID dentro del alcance de un fragmento? Estoy usando una serie de fragmentos para hacer una lista especializada. Los fragmentos se cargan desde un diseño, por lo que todos sus widgets tienen los mismos identificadores.

Supongo que puedo encontrar la manera de darle a cada widget una identificación personalizada durante (o justo después) de la creación. Sin embargo, sería mucho mejor si pudiera limitar el findViewById al alcance del fragmento.


Puedes hacerlo mediante getView().findViewById()


Sí, hay una manera, puedes encontrarlo a través de rootView. Primero encuentra la vista raíz de tu fragmento rootView=getView(); y luego use 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); }


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; }