我正在尝试编写一个简单的程序,它将获取一个editText的内容,并在单击一个按钮后将其传递给Toast。最初,这是一个教程,只需在单击按钮时显示Toast,但我想将EditText中的值传递给Toast的'text'参数。我在Eclipse中没有收到任何错误,但模拟器意外停止。
这是我的java代码:
package event.handling;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class HandlerExamples extends Activity implements OnClickListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button)findViewById(R.id.testButton);
button.setOnClickListener(this);
}
public void onClick(View v) {
EditText text = (EditText)findViewById(R.id.edittext);
Toast toast = Toast (text);
toast.show();
}
private Toast Toast(EditText text) {
// TODO Auto-generated method stub
return null;
}
}
最终我将使用四种不同的EditText视图,只需添加一起输入的数字并在Toast中显示答案。
谢谢你的时间!
答案 0 :(得分:5)
您从Toast
方法返回null,然后调用此null对象,以便获得NullPointerException
。
它应该是这样的:
private Toast Toast(EditText text) {
return Toast.makeText(this, text.getText().toString(), Toast.LENGTH_LONG);
}
顺便说一句,这是一个糟糕的命名,我建议private Toast toastFromEditText(EditText text)
或类似的。