对于DialogFragment的按钮,setOnClickListener?

时间:2018-05-27 12:51:18

标签: android android-dialogfragment dialogfragment

当用户点击某个项目的“自定义”按钮时,我正在显示一个DialogFragment。

btnCustomize.setOnClickListener(new View.OnClickListener(){
    @Override public void onClick(View v){
        CustomDialog dialog = new CustomDialog();
        FragmentManager manager = ((Activity) context).getFragmentManager();
        dialog.show(manager,"tag");
        // the line below throws null pointer exception
        Button btnCustomConfirm = v.findViewById(R.id.btnCustomConfirm);
        btnCustomConfirm.setOnClickListener(new View.OnClickListener(){
            @Override public void onClick(View v){
                //
            }
        });
    }
}

在对话框的xml布局文件中有一个Button btnCustomConfirm,但是行 btnCustomConfirm.setOnClickListener(...)会抛出nullpointerexception:

java.lang.NullPointerException:尝试在空对象引用上调用虚方法'void android.view.View.setOnClickListener(android.view.View $ OnClickListener)'

1 个答案:

答案 0 :(得分:1)

尝试将行更改为

Button btnCustomConfirm = v.findViewById(R.id.btnCustomConfirm);

另外,我假设你在对话框的XML布局中有一个id为btnCustomConfirm的按钮。