我已经尝试过各种方法将字符串转换为整数,然后在子字符串后转换回字符串,但我无法做到。它每次都冻结!
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText txtbox = (EditText) findViewById(R.id.editText);
final TextView txtview = (TextView) findViewById(R.id.textView);
Button btn = (Button) findViewById(R.id.Generate);
btn.setOnClickListener(new View.OnClickListener() {
Integer d;
Integer a;
public void onClick(View v) {
d=txtbox.length();
if(d==10) {
a=Integer.getInteger(txtbox.toString());
txtview.setText(a.toString().substring(0, 4));
}
}
});}}
答案 0 :(得分:0)
你可以通过使用原语而不是包装类来释放一些内存。此外,Integer有一个静态方法,允许您解析原始int并返回一个String。
尝试类似:
int intputValue = 0, inputLength = 0;
public void onClick(View v) {
input = txtbox.getText().toString().length();
inputValue = Integer.parseInt(txtbox.getText().toString().length());
txtView.setText(Integer.toString(inputValue).substring(0,4));
}
答案 1 :(得分:0)
使用txtbox.getText()代替txtbox
使用Integer.parseInt()而不是Integer.getInteger()