android-从内部类调用Intent

时间:2010-07-09 11:47:50

标签: android class android-activity android-intent

我想从内部类中调用一个新的活动,该类在d类中定义,它扩展了Activity .... 在Inner类的一个方法中编写的那段是::

Intent intent = new Intent(this,Test2.class);        startActivity(意向);

Test2被放置在同一个包中,因为我的主要clas被放置了,eclipse显示我错误“构造函数Intent(test.MyTimer,Class)未定义”.......

解决方案是什么?

2 个答案:

答案 0 :(得分:13)

像这样使用MyActivity.this

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

答案 1 :(得分:4)

我将父级传递给构造函数中的MyTimer类,然后您可以将其传递给Intent。意图需要一个派生自Context的类。

所以你的MyTimer看起来像

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

希望有所帮助。