QMUI自定义会话框点击确定报NullPointerException

写了一个会话框,让它在点击确定时输出输入框中的东西,但是一点击确定就闪退了。
在这里插入图片描述
之后发现是因为它不知道要去这个会话框所在的布局文件中去找输入框。

    @SuppressLint("ResourceType")
    protected void setCustomDialog() {
        setTheme(R.style.AppTheme2);
        builder=new QMUIDialog.CustomDialogBuilder(this);
        builder.setLayout(R.layout.add_task)
                .setTitle("待办事项")
                .addAction("取消", new QMUIDialogAction.ActionListener() {
                    @Override
                    public void onClick(QMUIDialog dialog, int index) {
                        dialog.dismiss();
                    }
                })
                .addAction("确定", new QMUIDialogAction.ActionListener() {
                    @Override
                    public void onClick(QMUIDialog dialog, int index) {
                        EditText task=dialog.findViewById(R.id.task);
                        task_name=task.getText().toString();
                        SeekBar seekBar = dialog.findViewById(R.id.seekBar);
                        time=seekBar.getProgress();
                        Log.d("time:",time+"");
                        Log.d("task:", task_name);
//                        Toast.makeText(LoginActivity.this,taskname, LENGTH_SHORT);
                        dialog.dismiss();
                    }
                });
    }

因为以前找控件时都是用findViewById的,因为那时的控件都是在该活动的布局文件中的,而这次是在另一个布局文件中,所以要使用dialog.findViewById()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章