Cómo acceder a la Actividad de los padres Ver en el Fragmento

Tengo una ActionBarActivity y fragmento. Estoy usando FragmentPagerAdapter que proporciona un fragmento de mi aplicación. Mi pregunta ¿Cómo puedo tener acceso a la Actividad de los padres Ver en el Fragmento ??

InformationsquelleAutor Bot | 2014-04-05

3 Kommentare

  1. 135

    Puede utilizar

    View view = getActivity().findViewById(R.id.viewid);

    Citando docs

    Específicamente, el fragmento se puede acceder a la instancia de la Actividad con
    getActivity() y realizar fácilmente tareas como encontrar un punto de vista en el
    la actividad de diseño de

    • Funciona, pero me gustaría utilizar una interfaz para comunicarse con la actividad o algo por el estilo.
    • su bienvenida a utilizar la interfaz de paso, también. Pero que es para comunicarse con la actividad
    • Sí ¿quién sabe lo que el estado va a ser, hacky sé, pero tengo el almuerzo para comer.
    • Fresco, sólo tendrá que comprobar si el Fragmento es añadido por isAdded() para evitar que se bloquee si la actividad no está conectado todavía.
    • Este funciona bien. Gracias @Raghunandan
    • No funciona si puedo rotar el dispositivo. Que tiempo la vista se convierte en nulo y tengo un NPE
    • Funciona muy bien para mí.Gracias
    • siempre obtener acceso desde el último fragmento si intento acceder desde el primer o segundo fragmento
    • Android docs están escritos de una manera estúpida. Docs citado Specifically, the fragment can access the Activity instance with getActivity() and easily perform tasks such as find a view in the activity layout sin embargo, Android Studio advertencia lee como getActivity() may be null
    • siéntase libre de presentar un problema con google en android cuestiones tracker. La documentación puede ser actualizado. la advertencia es una pelusa de advertencia. getactivity puede ser null si intenta acceder a él, incluso antes de que el fragmento se adjunta a la actividad.

  2. 6

    En primer lugar, cree una vista como esta:

    View view = getActivity().findViewById(R.id.viewid);

    A continuación, convertirlo a cualquier punto de vista que necesita, como este:

     if( view instanceof EditText ) {
                editText = (EditText) view;
                editText.setText("edittext");
                //Do your stuff
            }

    o

    if( view instanceof TextView ) {
      TextView textView = (TextView) view;
      //Do your stuff
    }
  3. 1

    De Kotlin es muy fácil el acceso de los padres de la Actividad de Ver en el Fragmento de

    activity!!.textview.setText("String")

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea