gpt4 book ai didi

android - 通过自定义对话框类的方法访问 EditText 文本

转载 作者:行者123 更新时间:2023-11-30 00:04:55 25 4
gpt4 key购买 nike

我有这个自定义的 alertDialog 类,我定义了一个 setText() 方法来设置 EditText 文本:

public class CustomEditDialog extends AlertDialog {

private Context context;
private CustomEditText editTextTv;
private CustomTextView titleTv;

public CustomEditDialog(Context context) {
super(context);
this.context = context;
}

public CustomEditDialog(Context context, int themeResId) {
super(context, themeResId);
this.context = context;
}

protected CustomEditDialog(Context context, boolean cancelable, OnCancelListener cancelListener) {
super(context, cancelable, cancelListener);
this.context = context;
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.editbox_dialog_layout);

getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);

titleTv = (CustomTextView)findViewById(R.id.title_tv);
editTextTv = (CustomEditText)findViewById(R.id.edit_text_et);


}


public void setText(CharSequence text){
editTextTv.setText(text);
}

public String getText(){
return editTextTv.getText().toString();
}


}

现在,当我在 Activity 中使用我的 CustomEditDialog 并访问 setText() 方法来填充 edittext 时:

CustomEditDialog customEditDialog = new CustomEditDialog(context);
customEditDialog.setText("OK!!");
customEditDialog.show();

我收到这个错误:

                                                                             java.lang.NullPointerException: Attempt to invoke virtual method 'void com.k.kh.CustomEditText.setText(java.lang.CharSequence)' on a null object reference                                  

请帮帮我。

最佳答案

您收到此错误是因为您试图在创建它之前调用 editTextTv.setText()。要修复它,您必须先调用 .show() 来调用 onCreate() 并初始化 CustomEditDialog View :

CustomEditDialog customEditDialog = new CustomEditDialog(context);
customEditDialog.show();
customEditDialog.setText("OK!!");

关于android - 通过自定义对话框类的方法访问 EditText 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49198820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com