2010-07-09 46 views
5

Quiero llamar a una nueva actividad desde dentro de una clase interna que se define en la clase d que extiende la actividad .... la parte escrita en uno de los métodos de esa clase interna es ::android- calling Intención de una clase interna

intención intencionada = nueva intención (this, Test2.class); startActivity (intención);

Prueba2 se coloca dentro del mismo paquete que mis principales clas se coloca y el eclipse está mostrando me d error "El constructor de Intención (test.MyTimer, Clase) no está definido" .......

lo es la solución?

Respuesta

4

Pasaría el padre a la clase MyTimer en el constructor y luego se lo pasaría al Intent. La intención requiere una clase que se deriva de Contexto.

Así que su MyTimer podría parecerse a

public class MyActivity extends Activity 
{ 
    private void StartTimer() 
    { 
     MyTimer timer = new MyTimer(this); 
     timer.startIntent(); 
    } 

    private class MyTimer 
    { 
     private Activity _context; 
     public MyTimer(Activity c) 
     { 
      _context = c; 
     } 
     public void startIntent() 
     { 
      Intent i = new Intent(_context, MyActivity.class); 
      _context.startActivity(i); 
     } 
    } 
} 

Espero que ayude.

+0

ya que helpd ... Thnks .... mi propósito fue smthng pero consiguió d concepto !! – poojan9118

13

Sólo tiene que utilizar MyActivity.this así:

Intent i = new Intent(MyActivity.this, MyActivity.class); 
+0

ya lo consiguió ........... – poojan9118

+0

wat dat rate significa? – poojan9118