写了一个会话框,让它在点击确定时输出输入框中的东西,但是一点击确定就闪退了。
之后发现是因为它不知道要去这个会话框所在的布局文件中去找输入框。
@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()