来自另一个类的EditText的Settext给出了nullpointer

时间:2012-01-11 21:56:14

标签: java android nullpointerexception

我已经扩展了Dialog来创建一个带有edittext的弹出窗口。我的计划是在我的代码中的几个地方使用此弹出窗口。我想在从打开的类打开弹出窗口时设置edittext

我遇到的麻烦是settext方法提供了一个nullpointer

public class RoundCommentDialog extends Dialog implements View.OnClickListener {

    private Context context;

    private String roundCommentText;    
    private EditText roundCommentEditText;

    private Button postiveButton;
    private Button negativeButton;

    public RoundCommentDialog(Context context) { 
        super(context); 
    } 

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.custom_round_comment_dialog);

        postiveButton = (Button) findViewById(R.id.dialog_positive_button); 
        postiveButton.setOnClickListener (this);
        negativeButton = (Button) findViewById(R.id.dialog_negative_button); 
        negativeButton.setOnClickListener (this);

        roundCommentEditText = (EditText) findViewById(R.id.comment_text);

    }

    public void setRoundCommentText(String roundCommentText) {
        this.roundCommentText = roundCommentText;
    }

    public String getRoundCommentText() {
        return roundCommentEditText.getText().toString();
    }

    public void updateCommentEditField() {

        roundCommentEditText.setText("TEST");
    }

    public Dialog getDialog() {
        updateCommentEditField();
        return this;
    }

    public void onClick(View v) {
        switch (v.getId()) {
        case R.id.dialog_positive_button:

            setRoundCommentText(roundCommentText);

            dismiss();
            break;
        case R.id.dialog_negative_button:
            cancel();
            break;
        }

    }


}

从我调用它的类我创建该类的新版本,然后调用setRoundComment(test)方法然后调用show方法。这给出了一个nullpointer

感谢您的时间

EDITTED

Baisiclly我在主班上打电话给上面的班级

RoundCommentDialog myDialog = new RoundCommentDialog(this);

然后我在Button Listenerer上执行以下操作

myDialog.setRoundCommentText(roundComentText);
myDialog.getDialog().show();

当我在调用GetDialog()并且在对话框类中出现错误时出错,它在以下行中出错

roundCommentEditText.setText("TEST");

1 个答案:

答案 0 :(得分:0)

尝试更改

private String roundCommentText;  

public String roundCommentText; 

我不是字符串专家,但这是我首先尝试的