当前位置: 首页 > 面试题库 >

使用onClickListener时出错(意图)

束俊材
2023-03-14
问题内容

好吧,我正在尝试在“ login.java”上创建一个意图,代码是:

 Button btEntrar = (Button) findViewById(R.id.btnSingIn);
    btEntrar.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent i;
            i = new Intent(this, MainActivity.class);
            startActivity(i);


        }
    });

但是它说我不能去参加其他活动了:

错误:(24,21)错误:没有为Intent(,Class)构造函数Intent.Intent(String,Uri)找到合适的构造函数不适用(参数不匹配;无法转换为String)构造函数Intent.Intent(Context,Class)不适用(参数不匹配;无法转换为上下文)

和…

错误:任务’:app:compileDebugJava’的执行失败。编译失败;有关详细信息,请参见编译器错误输出。


问题答案:

仅有几行内容解释了为什么this不起作用的原因:

i = new Intent(this, MainActivity.class)

该意图是在另一个类(这里是一个匿名内部类)内部创建的OnClickListener。因此this,不是按预期引用Activity(或Context)的实例,而是匿名内部类的实例OnClickListener

因此,您应该提供正确的类上下文。

i = new Intent(YourClassName.this, MainActivity.class)


 类似资料:
  • 错误:任务“:app:compiledebugjava”执行失败。编译失败;有关详细信息,请参阅编译器错误输出。

  • 这里我有一个表单的html代码。创建事件的表单。它要求用户提供一些信息,然后他必须按下创建按钮。 这里是我的表单的java代码。 我不知道为什么按下按钮后,它会给我一个错误,比如: 白标签错误页。此应用程序没有/Error的显式映射,因此您将其视为回退。 Tue Dec 29 00:24:57 EET 2020有一个意外错误(type=For的,状态=403)。禁止。 配置类

  • 在尝试使用AlertDialog设置微调器时遇到问题,继续收到错误“AlertDialog类型中的方法setItems(int, DialogInterface. OnClickListener)。生成器不适用于参数(String[], new View. OnClickListener(){})” 我对Android编程还比较陌生,我仍在适应它,如果有任何帮助,我将不胜感激!谢谢

  • 问题内容: 我的代码- 错误- > 警告:mysql_real_escape_string()[function.mysql-real-escape-string]:在C:\ xampp \ htdocs \ shizin \ admin \中拒绝访问用户’ODBC’@’localhost’(使用密码:NO)第48行的newArticle.php 警告:mysql_real_escape_stri

  • 为什么我在使用: mysqli_report(MYSQLI_REPORT_ALL);?致命错误:未捕获异常“mysqli_sql_exception”,在d:\xampp\htdocs\cms\includes\class\db.class.php:31堆栈跟踪:#0 d:\xampp\htdocs\cms\includes\class\db.class.php(31):mysqli->查询(“S