我想要多次输入,直到用户无法获得1.这将无法正常工作。在这种情况下,我可以采取多个编辑文本框吗?请告诉我。
TextView tv;
EditText et;
Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.evenodd2);
tv= (TextView) findViewById(R.id.textViewevenoddA);
et= (EditText) findViewById(R.id.editTextevenodd);
b= (Button) findViewById(R.id.buttonevenoddA);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String a1;
int num;
do
{
a1=et.getText().toString();
num=Integer.parseInt(a1);
if (num < 1)
tv.setText("Wrong Input");
if (num > 1 && num % 2 == 0)
{
tv.setText("Value is: "+num / 2);
}
else
{
tv.setText("Value is :"+num);
}
}
while (num != 1);
tv.setText("Thank You");
}
});
}}
答案 0 :(得分:1)
你不会在这里使用循环。每次用户按下按钮时,您只需处理一次。获取输入的循环是控制台的工作方式,但不是GUI驱动程序的反应。
答案 1 :(得分:0)
您需要将控制权交还给回转线程,以便用户有机会更改输入。此循环连续进行,您需要从onClick()返回,以便Event Dispatch Thread有机会等待用户更改值并再次单击该按钮。