如何在Android中为EditText的值添加一个
我试图从EditText中获取字符串,并在单击按钮时向值添加1,但不是执行1+1并将其设置为2,而是输出到EditText 1111,以此类推。我需要一些人帮我做数学题。提前谢谢如何在Android中为EditText的值添加一个,android,int,Android,Int,我试图从EditText中获取字符串,并在单击按钮时向值添加1,但不是执行1+1并将其设置为2,而是输出到EditText 1111,以此类推。我需要一些人帮我做数学题。提前谢谢 int rentPrice = 0; int peopleCount = 0; rentPrice = Integer.parseInt(mRentPriceText.getText().toString()); mybutton.setOnClickListent(new OnClickListener(){
int rentPrice = 0;
int peopleCount = 0;
rentPrice = Integer.parseInt(mRentPriceText.getText().toString());
mybutton.setOnClickListent(new OnClickListener(){
mRentPriceText.setText(rentPrice+1);
}
字符串实际上是1。所以“1”+“1”=“11” 因此,您必须首先将其转换为int并添加1,然后再将其转换为String并将其设置为EditText 所以改变这条线
mRentPriceText.setText(rentPrice+1);
到
mRentPriceText.setText(Integer.toString(rentPrice+1)) 试试这个
int temp = 0;
int rentPrice = 0;
int peopleCount = 0;
rentPrice = Integer.parseInt(mRentPriceText.getText().toString());
temp =rentPrice+1
mybutton.setOnClickListent(new OnClickListener(){
mRentPriceText.setText(String.valueOf(temp));
}
试着这样做:
int rentPrice = 0;
int peopleCount = 0;
mybutton.setOnClickListent(new OnClickListener(){
rentPrice = Integer.parseInt(mRentPriceText.getText().toString());
int out = rentPrice+1;
mRentPriceText.setText(String.valueOf(out));//Convert out to string
}
如果您将int值指定为set text,那么它将找到一些字符串资源,因此将int转换为string并使用inner()将+1添加到rentPrice:
mRentPriceText.setText(String.valueOf((rentPrice+1)));
如果您正在执行mTextview.setText(someInteger),则更有可能出现以下异常
android.content.res.Resources$NotFoundException: String resource ID #0x2
at android.content.res.Resources.getText(Resources.java:1134)
at android.widget.TextView.setText(TextView.java:4940)
2
因为TextView.setText(int)使android认为您可能指的是一些R.string.some\u string
。因此,将您的计算工作在字符串中总结为String.valueOf(“一些计算”)
我还有一些给你的提示
不要在rentPrice=Integer.parseInt(mRentPriceText.getText().toString())行中使用toString()代码>否则您很可能会得到一些时间NullPointerException
相反,我总是和你一起去
rentPrice=Integer.parseInt(String.valueOf(mRentPriceText.getText()) 尝试以下方法:mRentPriceText.setText(String.valueOf((rentPrice+1));