gpt4 book ai didi

java - setOnClickListener错误: No Idea Why?

转载 作者:行者123 更新时间:2023-12-01 18:36:49 25 4
gpt4 key购买 nike

我是 Android 开发新手,我一生都无法弄清楚为什么这会给我带来错误。错误发生在这一行: 'bu.setOnClickListener(new OnClickListener() {'

我正在学习 Lynda.com 上的 Android 开发基础教程;我的代码和老师的代码是一样的;至少我是这么认为的。

package com.lynda.lyndaproject;

import android.os.Bundle;
import android.app.Activity;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class Main extends Activity {

Button bu = (Button) findViewById(R.id.button1);

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

bu.setOnClickListener(new OnClickListener() {
public void onClick(View v){
}
});
}
}

顺便说一下,Eclipse 似乎不允许我导入任何东西;我确实相信导入“android.view.View”应该导入所有必需的内容。

最佳答案

首先,您需要修复导入。您使用了错误的 OnClickListener。换行

import android.content.DialogInterface.OnClickListener;

import android.view.View.OnClickListener;

接下来,您需要移动线路

Button bu = (Button) findViewById(R.id.button1);

调用setContentView(...)之后。因此,您的 onCreate 方法将如下所示:

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

Button bu = (Button) findViewById(R.id.button1);

bu.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v){

}


});
}

这是因为 findViewById(...) 在当前布局中查找 View。由于尚未通过 setContentView 设置,因此它将始终返回 null

关于java - setOnClickListener错误: No Idea Why?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21611662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com