AndroidStudio如何在点击不同的按钮时,在同一个textView中依次显示按钮的指定文本?
How to display specified text of buttons in the same textView in sequence when different buttons are clicked in Android Studio?
我在 Android Studio 中遇到问题。我有两个不同的按钮和一个 textView。我想要的效果如下:
CASE 1:点击bt1时,textView显示"A"。单击 bt2 时,在 textView 中添加 "G",因此 textView 显示 "AG"。
CASE 2:点击bt1时,textView显示"A"。再次点击bt1时消失,textView为空
CASE 3:CASE 1 完成后,当 bt1 被点击时,"A" 被移除,因此 textView 显示 "G"。
非常感谢您帮助我修改代码。提前致谢!!
主要Activity代码:
public class keyboard extends AppCompatActivity {
Button btn1,btn2,btn3;
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_keyboard);
text=(TextView)findViewById(R.id.txt);
btn1=(Button)findViewById(R.id.bt1);
btn2=(Button)findViewById(R.id.bt2);
btn1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
text.setText("A");
text.setVisibility(text.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
}
});
btn2.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
text.setText(text.getText() + "G");
text.setVisibility(text.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
}
});}}
给你..
public class Keyboard extends AppCompatActivity {
Button btn1, btn2;
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_keyboard);
text = findViewById(R.id.txt);
btn1 = findViewById(R.id.bt1);
btn2 = findViewById(R.id.bt2);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
text.setVisibility(View.VISIBLE);
if (text.getText().equals("A")) {
text.setText("");
text.setVisibility(View.GONE);
} else if (text.getText().equals("AG")) {
text.setText("G");
} else {
text.setText("A");
}
}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
text.setText(String.format("%sG", text.getText()));
}
});
}
}
我在 Android Studio 中遇到问题。我有两个不同的按钮和一个 textView。我想要的效果如下:
CASE 1:点击bt1时,textView显示"A"。单击 bt2 时,在 textView 中添加 "G",因此 textView 显示 "AG"。
CASE 2:点击bt1时,textView显示"A"。再次点击bt1时消失,textView为空
CASE 3:CASE 1 完成后,当 bt1 被点击时,"A" 被移除,因此 textView 显示 "G"。
非常感谢您帮助我修改代码。提前致谢!!
主要Activity代码:
public class keyboard extends AppCompatActivity {
Button btn1,btn2,btn3;
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_keyboard);
text=(TextView)findViewById(R.id.txt);
btn1=(Button)findViewById(R.id.bt1);
btn2=(Button)findViewById(R.id.bt2);
btn1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
text.setText("A");
text.setVisibility(text.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
}
});
btn2.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
text.setText(text.getText() + "G");
text.setVisibility(text.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
}
});}}
给你..
public class Keyboard extends AppCompatActivity {
Button btn1, btn2;
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_keyboard);
text = findViewById(R.id.txt);
btn1 = findViewById(R.id.bt1);
btn2 = findViewById(R.id.bt2);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
text.setVisibility(View.VISIBLE);
if (text.getText().equals("A")) {
text.setText("");
text.setVisibility(View.GONE);
} else if (text.getText().equals("AG")) {
text.setText("G");
} else {
text.setText("A");
}
}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
text.setText(String.format("%sG", text.getText()));
}
});
}
}