按钮 使用匿名内部类 的一些问题

量化分析 2014-09-30 08:36:50
poker_bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//使用整个包名来跳转
Intent intent=new Intent();
//Intent intent=new Intent(MainActivity.this,poker_game.class);
intent.setClassName(this,"com.example.hackertool.poker_game");
//intent.setClassName(MainActivity.this, "com.example.hackertool.poker_game");

startActivities(intent);

}
});
//为什么失败了?

我是初哥,所以 我觉得是不是 在 this的地方 应该用 Mainactivity.this ?

返回的错误信息是:

Error:(39, 17) error: no suitable method found for startActivities(Intent)
method Activity.startActivities(Intent[],Bundle) is not applicable
(actual and formal argument lists differ in length)
method Activity.startActivities(Intent[]) is not applicable
(actual argument Intent cannot be converted to Intent[] by method invocation conversion)
method ContextWrapper.startActivities(Intent[],Bundle) is not applicable
(actual and formal argument lists differ in length)
method ContextWrapper.startActivities(Intent[]) is not applicable
(actual argument Intent cannot be converted to Intent[] by method invocation conversion)
method Context.startActivities(Intent[],Bundle) is not applicable
(actual and formal argument lists differ in length)
method Context.startActivities(Intent[]) is not applicable
(actual argument Intent cannot be converted to Intent[] by method invocation conversion)
...全文
209 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hcwfc 2014-10-02
  • 打赏
  • 举报
回复
1、这里的this指的是你的实现的OnClickListener接口的这个类,所以this不行需要像他们说的MainActivity.this才能引用到Activity。 2、建议在跳转Intent的时候做一个检查,这样不会让你的程序崩溃(如果你的手机上没有你要打开的APP):

 Intent intent = new Intent();
        if (intent.resolveActivity(getPackageManager())  != null)
        {
            startActivity(intent);
        }
svenwang 2014-09-30
  • 打赏
  • 举报
回复
应该用MainActivity.this,指明是MainActivity对象。
小妖森 2014-09-30
  • 打赏
  • 举报
回复
因为你用的是匿名内部类。所以intent.setClassName(this,"com.example.hackertool.poker_game");中的this指的是这个匿名内部类。 intent.setClassName(MainActivity.this, "com.example.hackertool.poker_game");这样写是正确的。

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧