Android 为什么我的文本视图表现得很奇怪?
我正在制作一个毫无意义的android应用程序,它有两个按钮和两个文本视图 它的计数器int设置为0 第一个按钮名为add,向计数器添加1,第二个按钮名为sub,从计数器中减去1 如果计数器大于1,则显示totalPlus文本视图,其中包含当前计数器值 如果coutner等于或小于0,则会显示Total减去文本视图以及当前计数器值 在这两种情况下,不相关的文本视图都是隐藏的 我遇到的问题是,假设我在+5上,顶部计数器将显示,当我按下按钮时,它将显示递增。但如果我按下减法按钮,当前的文本视图将隐藏,直到我达到0或更小,其中显示的是minusTextView。这是双向的 [守则]Android 为什么我的文本视图表现得很奇怪?,android,textview,Android,Textview,我正在制作一个毫无意义的android应用程序,它有两个按钮和两个文本视图 它的计数器int设置为0 第一个按钮名为add,向计数器添加1,第二个按钮名为sub,从计数器中减去1 如果计数器大于1,则显示totalPlus文本视图,其中包含当前计数器值 如果coutner等于或小于0,则会显示Total减去文本视图以及当前计数器值 在这两种情况下,不相关的文本视图都是隐藏的 我遇到的问题是,假设我在+5上,顶部计数器将显示,当我按下按钮时,它将显示递增。但如果我按下减法按钮,当前的文本视图将隐藏
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
counter = 0;
add = (Button) findViewById(R.id.bAdd);
sub = (Button) findViewById(R.id.bSub);
totalPlus = (TextView) findViewById(R.id.totalPlus);
totalMinus = (TextView) findViewById(R.id.totalMinus);
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
counter++;
if (counter > 1)
totalPlus.setVisibility(View.VISIBLE);
totalMinus.setVisibility(View.INVISIBLE);
totalPlus.setText("Your Total is " + counter);
}
});
sub.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
counter--;
if (counter <0)
totalMinus.setVisibility(View.VISIBLE);
totalPlus.setVisibility(View.INVISIBLE);
totalMinus.setText("Your Total is " + counter);
}
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
计数器=0;
add=(按钮)findViewById(R.id.bAdd);
sub=(按钮)findViewById(R.id.bSub);
totalPlus=(TextView)findViewById(R.id.totalPlus);
totalMinus=(TextView)findViewById(R.id.totalMinus);
add.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
计数器++;
如果(计数器>1)
totalPlus.setVisibility(View.VISIBLE);
total减号.setVisibility(视图.不可见);
setText(“您的总数是”+计数器);
}
});
sub.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
计数器--;
if(counterJava忽略缩进级别。如果if
语句通过,则需要在要执行的所有三条语句周围使用大括号
if (counter <0) { // <-- this
totalMinus.setVisibility(View.VISIBLE);
totalPlus.setVisibility(View.INVISIBLE);
totalMinus.setText("Your Total is " + counter);
} // <-- and this
if(counter)if(counter)你的if计数器调用没有用括号括起来,所以不管怎样它都在执行第二条和第三条语句。把if内容用括号括起来谢谢!你说Java忽略缩进级别。有没有语言不这样做?Python在一定程度上做到了。