gpt4 book ai didi

java - 从函数内启用 Android 应用程序按钮

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

我正在制作一个 Android 应用程序,在启动过程中我禁用媒体播放器的暂停按钮。单击“确定”按钮(并且开始播放音乐)后,我想启用暂停按钮。

这段代码工作正常,除了最后一行(我确实删除了一些不相关的行)。这给了我一个运行时错误(NullPointerException)。

我使用 MainActivity.this 来访问该按钮。我做错了什么?

感谢您的帮助!

public class MainActivity extends Activity {

// initialise variables
TextView textOut;
MediaPlayer mediaPlayer;
Button buttonPauze;
Button ok;

// *******************************************************
// set Layout - on create
// *******************************************************
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textOut = (TextView) findViewById(R.id.textView1);


// *******************************************************
// set the play, generate and pauze buttons
// *******************************************************
Button buttonPauze = (Button) findViewById(R.id.buttonPauze);
Button ok = (Button) findViewById(R.id.buttonStart);

buttonPauze.setOnClickListener(buttonPauseOnClickListener);
buttonPauze.setEnabled(false);
ok.setEnabled(true);

// *******************************************************
// on click generate
// *******************************************************
ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

MainActivity.this.buttonPauze.setEnabled(true);

最佳答案

替换:

Button buttonPauze = (Button) findViewById(R.id.buttonPauze);

与:

buttonPauze = (Button) findViewById(R.id.buttonPauze);
<小时/>

基本上,您有 2 个 buttonPauze,一个作为局部变量,另一个作为类字段。通过删除 Button,您可以在本地使用类字段 buttonPauze 并为其分配适当的对象。

<小时/>

ok相同!

关于java - 从函数内启用 Android 应用程序按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460557/

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