2012-12-01 38 views
2

我在创建一个意图导航到我的Android应用程序中的其他活动时有一些问题。当我创建的意图的功能,它给了我一个错误说Android Intent构造函数在启动意图时未定义

The constructor Intent(new View.OnClickListener(){}, Class<MapItmeizedOverlay>) is undefined 

下面是它具有startActivity意图SelectOptions.java

btnLocation.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      Intent intent2 = new Intent(this, MapItmeizedOverlay.class); 
      startActivity(intent2); 


     } 
    }); 

回答

6

请填写下面的代码

Intent intent2 = new Intent(Current_Activity.this, MapItmeizedOverlay.class); 
startActivity(intent2); 

代替

Intent intent2 = new Intent(this, MapItmeizedOverlay.class); 
startActivity(intent2); 

用于在任何View上启动新活动单击使用当前活动上下文或应用程序上下文而不是View上下文,因为Intent构造函数以当前上下文或应用程序上下文为第一参数

+0

khan:谢谢。这工作。但是很奇怪,因为我使用了我在同一个项目中发布的语法,而这个项目并没有工作。任何理由。 – noobcoder

+0

我认为这是不可能的,因为你可以在这里看到http://developer.android.com/reference/android/content/Intent.html#Intent%28android.content.Context,%20java.lang.Class%3C?%3E %29意图构造函数将packageContext作为第一个参数 –

+0

@noobcoder您显示的语法将永远不会工作。你确定它是在onClickListener中吗?原因是onClickListener本身就是一个类,所以'this'是对监听器实例的引用,而不是它所包含的活动。 – Simon