Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 15/07/14, 01:03:43
Array

[xs_avatar]
kakashi20 kakashi20 no está en línea
Usuario novato en la web
 
Fecha de registro: jul 2014
Mensajes: 22
Tu operador: Movistar

Exclamation Ussar Intent dentro de un fragment class

Estoy usando los tabs de action bar y lo que hacer es cuando estoy en una de las opciones de mi tab, osea en un fragment, tener un botón en ese fragment y cuando haga clic en el ir a otra actividad, pero tengo un error en mi Intenten que me dice que no está definido.

Alguien me puede ayudar?

Muchas gracias.

Código:
package com.example.dona1click;

import android.app.Activity;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;


public class Nosotros extends Fragment {
    Button Btn;
    Intent intent;


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View x = inflater.inflate(R.layout.nosotros, container, false);

        Btn = (Button)x.findViewById(R.id.button1);

        Btn.setOnClickListener(new OnClickListener() { // evento clic del boton

            @Override
            public void onClick(View v) {

                // al hacer clic se manda para la otra pagina


                intent = new Intent (this, MainActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);             
                startActivity(intent);

                //---------------------------------------------


            }

        }); 

        return x;
    }
}
Responder Con Cita


  #2  
Viejo 15/07/14, 07:26:48
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
En vez de:

new Intent (this, MainActivity.class);

pon:

new Intent (getActivity(), MainActivity.class);

Por cierto que ese código tampoco te funcionaría en una Activity, porque "this" en ese contexto es el OnClickListener, si Nosotros fuese una Activity habría que poner "Nosotros.this"

EDITO:

Por cierto también, en este caso da igual, pero no es conveniente llamar a una nueva Activity directamente desde el Fragment, en su lugar es mejor hacerlo a través de la Activity que lo contiene, es decir, usando:

getActivity().startActivity(intent);

Repito que en este caso da igual, pero si fuese un startActivityForResult te encontrarías con el problema de que el requestCode sería distinto al que pusiste originalmente.

Última edición por kriogeN Día 15/07/14 a las 07:41:41.
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 18/07/14, 17:03:06
Array

[xs_avatar]
kakashi20 kakashi20 no está en línea
Usuario novato en la web
 
Fecha de registro: jul 2014
Mensajes: 22
Tu operador: Movistar

gracias por la ayuda y respuesta. Me sirvió de mucho.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 13:07:52 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /