我正试着在Android上使用Dialogs。我最近遇到了这个使用Builder类的例子。
代码是
AlertDialog.Builder builder= new AlertDialog.Builder(getActivity());
View dialogView = inflater.inflate(R.layout.dialog_show_note, null);
接下来它显示了这行代码
builder.setView(dialogView).setMessage("Add a new note");
现在,当我输入此行时,弹出的错误消息是“无法解析setView”
我不确定我犯了什么错误,或者书中有错误。 Builder类甚至包含 setView方法?
错误的完整代码示例如下: -
public class DialogNewNote extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View dialogView = inflater.inflate(R.layout.dialog_new_note, null);
builder.setView(dialogView).setMessage("Add a new note"); //error
}
}
答案 0 :(得分:0)
我试过这个,我认为你应该把你的代码放在onCreate而不是onCreateDilaog.On另一方面,如果它已经扩展到对话框类的相同对话框,那么你应该在onCreateView方法中提供布局充气器,如正常片段。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View dialogView = getActivity().getLayoutInflater().inflate(R.layout.my_layout, null);
builder.setView(dialogView).setMessage("kqhwdi");
}
用于实现单独的警告对话框我认为你应该在onCreate()或onViewCreated()中创建它。