【发布时间】:2014-03-08 08:43:50
【问题描述】:
我正在尝试制作一个应用程序,其中用户将电话号码输入到 EditText 变量 NumberBox 中,然后从字符串转换为 int 并在方法 intent.putExtra("address", PhoneNumberint); 中使用当我尝试这样做时,应用程序崩溃了,所以请让我知道问题出在哪里。从 string 到 int 的转换在某种程度上是错误的吗?
package com.example.module09;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
//variables
EditText NumberBox;
Button SMSButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//
NumberBox = (EditText) findViewById(R.id.NumberBox);
SMSButton = (Button) findViewById(R.id.SMSButton);
final int PhoneNumberint = Integer.parseInt(NumberBox.getText().toString());
//onclick
SMSButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.putExtra("address", PhoneNumberint);
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
【问题讨论】:
-
改用:
final int PhoneNumberint = Integer.valueOf(NumberBox.getText().toString());。 -
使用了这个
Integer.valueOf(age.getText().toString());
标签: android string android-intent int