gpt4 book ai didi

java - OnOptionsItemSelected - 按下一个按钮执行另一个按钮的操作

转载 作者:搜寻专家 更新时间:2023-11-01 09:21:12 27 4
gpt4 key购买 nike

我有一个带有两个按钮的 onOptionsItemSelected 方法,我可以通过单击其中一个按钮来更改子项的值。

一个按钮是“完成”,另一个是“进行中”。

我单击完成按钮,它正确地更改了子值,然后将值更改为“进行中”,甚至没有单击“进行中”按钮。

我找不到任何与我的问题类似的问题,非常感谢任何帮助。

@Override
public boolean onOptionsItemSelected(MenuItem item) {

switch (item.getItemId()) {

case R.id.complete:
Log.d(TAG, "Complete button tapped");
Intent intent = getIntent();

final String key = intent.getStringExtra("passKey");

status.setText(R.string.Complete);

DatabaseReference ref = database.child(key);
final DatabaseReference statusRefComplete = ref.child("Status");

statusRefComplete.setValue("Complete").addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(edit_task.this, "Task Complete", Toast.LENGTH_SHORT).show();
}
}
});

case R.id.inprogress:
Log.d(TAG, "In-Progress button tapped");
Intent intent2 = getIntent();

final String key2 = intent2.getStringExtra("passKey");

status.setText(R.string.Inprogress);

DatabaseReference ref2 = database.child(key2);
final DatabaseReference statusRefInProgress = ref2.child("Status");

statusRefInProgress.setValue("In-Progress").addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(edit_task.this, "Task In-Progress", Toast.LENGTH_SHORT).show();
}//if
}//OnComplete
});


}
return super.onOptionsItemSelected(item);
}

最佳答案

您忘记为每个条件添加 break:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
...
switch (item.getItemId()) {

case R.id.complete:
....
break; // -> You must add this line.
case R.id.inprogress:
...
break; // -> You must add this line.
}
...
}

如果您不添加它,代码将执行 R.id.complete 的代码,但它不会停止。它将继续执行并运行 R.id.inprogress 的代码。所以,只是“突破”点!

关于java - OnOptionsItemSelected - 按下一个按钮执行另一个按钮的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55261970/

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