2010-07-09 4 views
5

je veux appeler une nouvelle activité à partir d'une classe interne qui est définie dans la classe d qui étend l'activité .... le morceau de écrit dans l'une des méthodes de cette classe intérieure est ::android-appel Intent d'une classe Inner

Intention intention = nouvelle intention (this, Test2.class); startActivity (intention);

Test2 est placé dans le même paquet que mes principaux CLAS est placé et éclipse me montre D Erreur « L'intention du constructeur (test.MyTimer, classe) est indéfini » .......

ce est la solution ??

Répondre

4

Je passerais le parent à la classe MyTimer dans le constructeur, puis vous pouvez transmettre cela à l'intention. L'intention nécessite une classe dérivée de Context.

Ainsi, votre MyTimer pourrait ressembler

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

espoir qui aide.

+0

ya ce helpd ... thnks .... mon but était smthng mais a concept d !! – poojan9118

13

Il suffit d'utiliser MyActivity.this comme ceci:

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

Y a-t-il ........... – poojan9118

+0

wat est-ce que le taux de dat signifie? – poojan9118