2011-08-05 52 views
1

我正在尝试编写一个简单的程序,该程序将在单击按钮后将一个editText的内容传递给Toast。最初,这是一个教程,当按钮被点击时,它只是简单地显示一个Toast,但我想将一个值从EditText传递给Toast的'text'参数。我没有在Eclipse中发现任何错误,但模拟器意外停止。将EditText传递给Toast

这里是我的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的意见和简单的添加数字一起进入,并显示在吐司答案。

谢谢你的时间!

回答

5

您从Toast方法返回null,然后调用此空对象,以便您获得NullPointerException

应该是这样的:

private Toast Toast(EditText text) { 
    return Toast.makeText(this, text.getText().toString(), Toast.LENGTH_LONG); 
} 

顺便说一句,这是一个不好的命名,我会建议private Toast toastFromEditText(EditText text)或相似。

+0

解决了它......现在我正在添加多个EditText视图!提前学习更多!非常感谢! – phi16181