[英]Android handling fragment rotation with RadioButtons onClick methods
[英]radiobuttons (change condition to onclick)
通常有以下屏幕:
如何将条件从OnClick
放置到onCheckedChanged
( onCheckedChanged
按钮)。 它仅与OnClick中的一个变量price_53_off
一起使用,但是我想在选中其他price_53_off
按钮(500 gr。)时程序解析其他变量(price_73_off)并计算其他周期。
下面的一些代码。
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
ImageView plus;
ImageView minus;
TextView tvResult;
TextView price;
TextView price_53_off;
TextView price_73_off;
RadioGroup radioGroup_price;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
plus = (ImageView) findViewById(R.id.plus);
plus.setOnClickListener(this);
minus= (ImageView) findViewById(R.id.minus);
minus.setOnClickListener(this);
tvResult = (TextView) findViewById(R.id.tvResult);
price = (TextView) findViewById(R.id.price);
price_53_off = (TextView) findViewById(R.id.price_53_off);
price_73_off = (TextView) findViewById(R.id.price_73_off);
radioGroup_price = (RadioGroup) findViewById(R.id.radioGroup_price);
radioGroup_price.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.radioButton_250:
price.setText("53");
break;
case R.id.radioButton_500:
price.setText("73");
break;
}
}
});
}
@Override
public void onClick(View v) {
int parse_quant;
int parse_price_53;
int num2 = 1;
int result = 0;
int resultprice=0;
parse_quant = Integer.parseInt(tvResult.getText().toString());
parse_price_53 = Integer.parseInt(price_53_off.getText().toString());
switch (v.getId()) {
case R.id.plus:
result = parse_quant + num2;
resultcena= result*parse_price_53;
}
switch (v.getId()) {
case R.id.minus:
result = parse_quant - num2;
if (parse_quant==1){
return;
}
resultprice= result*parse_price_53;
}
tvResult.setText( String.valueOf(result) );
price.setText( String.valueOf(resultprice) );
}
}
为了使result
和resultPrice
变量在onCheckChanged
和onClick
中都可用,您需要将它们存储在类级别,而不是在onClick
方法中本地存储。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.