我有一个活动(主要),并在其中插入了一个按钮。当用户按下按钮时,会出现一个带有 2 个单选框的对话框。我想根据选择的单选按钮将“1”或“0”值设置为“ntv”,然后在主活动中使用“ntv”值,但这似乎不会将“ntv”值转移到主活动,我的代码有什么问题?
final CharSequence[] chan = {"Minutes", "Seconds"}; builder = new AlertDialog.Builder(Main.this); builder.setTitle("Please Select:"); builder.setSingleChoiceItems(chan, 0, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { if(chan[item]=="Minutes") { Toast.makeText(getApplicationContext(), "Minutes", Toast.LENGTH_SHORT).show(); ntv="1"; } else if (chan[item]=="Seconds") { Toast.makeText(getApplicationContext(), "Seconds", Toast.LENGTH_SHORT).show(); ntv="0"; } } }); AlertDialog alert = builder.create(); alert.show();
我将“ntv”定义为字符串,这是比较“ntv”以检查它是“0”还是“1”时的代码的一部分
ImageView set1= (ImageView) findViewById(R.id.set1); ImageView set2= (ImageView) findViewById(R.id.set2); if (ntv.equals("0")) { set1.setVisibility(View.INVISIBLE); } if (ntv.equals("1")) { set2.setVisibility(View.INVISIBLE); }
而且因为 (set1) 和 (set2) 都不会隐形,我意识到“ntv”没有价值。