【问题标题】:Android- void setOnClickListener wants returnAndroid- void setOnClickListener 想要返回
【发布时间】:2018-02-21 17:22:14
【问题描述】:

这是我的代码。我为你标记了两个错误。你可以猜到,我是 Android 的初学者。 我真的无法理解它们的含义,因为另一个活动中的类似代码可以完美运行。 方法“onClick”被标记为从未使用过,我想这是问题的关键。 但为什么它要我从 void 函数返回?!我什至尝试过“return false”;在那里,但它根本没有用。

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.content.Intent;

public class MenuActivity extends AppCompatActivity implements View.OnClickListener {
    private Button intentMenuButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_menu);

    intentMenuButton = (Button) findViewById(R.id.intentMenuButton);
    intentMenuButton.setOnClickListener(this); //in View cannot be applied to package_name;
}


public void onClick(View v){
    if(v.getId() == R.id.furtherButton){
        Intent intentMain = new Intent(this,MainActivity.class);
        startActivity(intentMain);
    }
 }  //Missing return statement! 
}

【问题讨论】:

  • 您的按钮 ID 是 intentMenuButton,您正在使用 R.id.furtherButton 进行检查。
  • @ND1010_好吧,这是学习java的方法之一。
  • v.getId() == R.id.intentMenuButton
  • 发布您的 XML 对话代码
  • 如果您提出这样的问题,您将获得持续降级积分。按照我的建议自己做点努力。

标签: android return onclicklistener void


【解决方案1】:

像这样使用...

intentMenuButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

            }
        });

【讨论】:

  • 从你的代码中删除这一行... intentMenuButton.setOnClickListener(this); //在View中不能应用到package_name;
  • 也删除...实现 View.OnClickListener
  • 你能解释一下吗从你的代码中删除这一行... intentMenuButton.setOnClickListener(this); //in View不能应用到package_name
  • 您可以编辑您的帖子,而不是在 cmets 中添加更多信息
【解决方案2】:

1.我猜是缺少@Override。

2.将R.id.furtherButton替换为R.id.intentMenuButton

@Override
public void onClick(View v){
    if(v.getId() == R.id.intentMenuButton){
        Intent intentMain = new Intent(this,MainActivity.class);
        startActivity(intentMain);
    }
} 

【讨论】:

    猜你喜欢
    • 2021-02-07
    • 2015-08-20
    • 2021-06-22
    • 2013-08-19
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 2011-03-02
    • 1970-01-01
    相关资源
    最近更新 更多