变量 'Button' 从未分配(Java 使用 android studio)
Variable 'Button' never assigned (Java using android studio)
首先:如果这个问题已经被问过好几次了,我深表歉意。我只是找不到修复程序。
android 工作室中的编译器 returns“1 个错误”:
Button button_go2activity findViewById(R.id.button_go2activity);
Error code: variable 'button_go2activity' never assigned
这让我很困惑。我还有另一个按钮,我分配了相同的按钮(并且工作正常)。我还尝试在 strings.xml 中添加变量 'button' (尽管它可以在没有该声明的情况下与另一个按钮一起使用)。
请查看附件中的代码。
非常感谢您的帮助。
最好的,
康斯坦丁
package paperpad.app;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.database.Cursor;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.text.method.LinkMovementMethod;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
//private Button button; //button because otherwise not declared???
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button_openHelp = findViewById(R.id.button_openHelp); //connect button "open help" to xml
button_openHelp.setOnClickListener(new View.OnClickListener() { //find button
@Override
public void onClick(View view) { //activity when button "open help" is clicked
Intent openHelp = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com")); //link to paperPad youtube channel
startActivity(openHelp);
}
});
Button button_go2activity findViewById(R.id.button_go2activity);
button_go2activity.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
openActivity_loadPicture(); //activity defined below
}
});
}
public void openActivity_loadPicture() {
Intent intent = new Intent(this, loadpicture.class);
startActivity(intent);
}
}
在您的代码中,您缺少 =
赋值运算符。定义 button_go2activity
的行应该如下所示:
Button button_go2activity = findViewById(R.id.button_go2activity);
首先:如果这个问题已经被问过好几次了,我深表歉意。我只是找不到修复程序。
android 工作室中的编译器 returns“1 个错误”:
Button button_go2activity findViewById(R.id.button_go2activity);
Error code: variable 'button_go2activity' never assigned
这让我很困惑。我还有另一个按钮,我分配了相同的按钮(并且工作正常)。我还尝试在 strings.xml 中添加变量 'button' (尽管它可以在没有该声明的情况下与另一个按钮一起使用)。
请查看附件中的代码。 非常感谢您的帮助。
最好的, 康斯坦丁
package paperpad.app;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.database.Cursor;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.text.method.LinkMovementMethod;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
//private Button button; //button because otherwise not declared???
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button_openHelp = findViewById(R.id.button_openHelp); //connect button "open help" to xml
button_openHelp.setOnClickListener(new View.OnClickListener() { //find button
@Override
public void onClick(View view) { //activity when button "open help" is clicked
Intent openHelp = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com")); //link to paperPad youtube channel
startActivity(openHelp);
}
});
Button button_go2activity findViewById(R.id.button_go2activity);
button_go2activity.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
openActivity_loadPicture(); //activity defined below
}
});
}
public void openActivity_loadPicture() {
Intent intent = new Intent(this, loadpicture.class);
startActivity(intent);
}
}
在您的代码中,您缺少 =
赋值运算符。定义 button_go2activity
的行应该如下所示:
Button button_go2activity = findViewById(R.id.button_go2activity);