gpt4 book ai didi

java - 如何使用Android Studio将三个EditText一一填充?

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

这段代码运行得很好。我希望它更简单,就像使用 nextFocusLeftnextFocusRightnextFocusForward 一样。我的代码包含很多 if 和 if else。

    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
//my buttons
Button b1, b2,b3;
//my Empty editText to fill them by my buttons one by one
EditText t1,t2,t3;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);



b1 = (Button) findViewById(R.id.b1);
b2 = (Button) findViewById(R.id.b2);
b3 = (Button) findViewById(R.id.b3);



t1 = (EditText) findViewById(R.id.t1);
t2 = (EditText) findViewById(R.id.t2);
t3 = (EditText) findViewById(R.id.t3);

b1.setOnClickListener(this);
b2.setOnClickListener(this);
b3.setOnClickListener(this);




}


@Override
public void onClick(View view) {

switch (view.getId()){
case R.id.b1:


//check if editText Empty or not
if (t1.getText().toString().equals("")){

t1.setText(t1.getText().toString() + b1.getText());

}else if (t2.getText().toString().equals("")){

t2.setText(t2.getText().toString() + b1.getText());
}else if (t3.getText().toString().equals("")){

t3.setText(t3.getText().toString() + b1.getText());
}

break;


case R.id.b2:

//check if editText Empty or not

if (t1.getText().toString().equals("")){

t1.setText(t1.getText().toString() + b2.getText());

}else if (t2.getText().toString().equals("")){

t2.setText(t2.getText().toString() + b2.getText());
}else if (t3.getText().toString().equals("")){

t3.setText(t3.getText().toString() + b2.getText());
}

break;


case R.id.b3:

//check if editText Empty or not

if (t1.getText().toString().equals("")){

t1.setText(t1.getText().toString() + b3.getText());

}else if (t2.getText().toString().equals("")){

t2.setText(t2.getText().toString() + b3.getText());
}else if (t3.getText().toString().equals("")){

t3.setText(t3.getText().toString() + b3.getText());
}

break;




}
//check Answer
//correct answer ABC
if (t1.getText().toString().equals("A") &&
t2.getText().toString().equals("B") &&
t3.getText().toString().equals("C") ){

//if answer correct do
t1.setBackgroundResource(R.drawable.bg);
t2.setBackgroundResource(R.drawable.bg);
t3.setBackgroundResource(R.drawable.bg);


}


}
}

最佳答案

这看起来好一点..

@Override
public void onClick(View view) {
final Button button = findViewById(view.getId());
final String text = button.getText();

//check if editText Empty or not
if (t1.getText().toString().equals("")) {
t1.setText(t1.getText().toString() + text);
}else if (t2.getText().toString().equals("")) {
t2.setText(t2.getText().toString() + text);
}else if (t3.getText().toString().equals("")) {
t3.setText(t3.getText().toString() + text);
}
}

关于java - 如何使用Android Studio将三个EditText一一填充?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59418453/

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