Java 如何在文本视图中设置变量文本
在文本视图中,我将字符串的变量值作为文本。 我面临的错误是: 致命异常:主进程:app.com.application,PID:14336 Java。ClassCastException:Java。无法将Lang.String转换为Java。Lang.Integer atapp.com.application.activity.PayActivity$1.onCheckedChangedPayaActivity.java:41 另外,这是我在这部分的代码:Java 如何在文本视图中设置变量文本,java,android,Java,Android,在文本视图中,我将字符串的变量值作为文本。 我面临的错误是: 致命异常:主进程:app.com.application,PID:14336 Java。ClassCastException:Java。无法将Lang.String转换为Java。Lang.Integer atapp.com.application.activity.PayActivity$1.onCheckedChangedPayaActivity.java:41 另外,这是我在这部分的代码: public class PayAct
public class PayActivity extends AppCompatActivity {
Button button;
RadioGroup radioGroup;
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pay);
button = findViewById(R.id.btnPay);
radioGroup = findViewById(R.id.radioPay);
textView = findViewById(R.id.pay);
final String[] TextShow ={
"مبلغ این بسته 2500 تومان است",
"مبلغ این بسته 7000 تومان است",
"مبلغ این بسته 10000 تومان است",
"مبلغ این بسته 20000 تومان است"
};
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, @IdRes int checkedId) {
int selectedId = radioGroup.getCheckedRadioButtonId();
RadioButton radioButton = findViewById(selectedId);
final int ArticleTag = (int) radioButton.getTag();
textView.setText(TextShow[ArticleTag]);
Toast.makeText(PayActivity.this,TextShow[ArticleTag] , Toast.LENGTH_SHORT).show();
}
});
}
}
此外,标记包括0、1、2和3。
你能告诉我哪里有问题吗?
谢谢您不能将包含整数值的字符串强制转换为整数值:
(int) radioButton.getTag()
由于getTag返回一个对象,因此必须显式转换为字符串,然后解析:
Integer.parseInt(radioButton.getTag().toString())
不能将包含整数值的字符串强制转换为整数值:
(int) radioButton.getTag()
由于getTag返回一个对象,因此必须显式转换为字符串,然后解析:
Integer.parseInt(radioButton.getTag().toString())
在标记中使用包装器类型。并确保在获取标记之前已设置标记。@NileshRathod感谢您在标记中使用包装器类型。在拿到标签之前,一定要确保标签已经设置好。@NileshRathod谢谢你的建议很好,谢谢你…你的建议很好,谢谢你。。。