避免传递null作为视图根(在AlertDialog中膨胀自定义布局时)

时间:2017-07-31 15:20:28

标签: android android-layout android-alertdialog layout-inflater

尝试为AlertDialog充气自定义布局,但不断得到这个警告。我已经看到了几种不同的解决方案,但不知道哪种方法对我的方案是正确的。什么是摆脱这个空警告的实际正确方法?

  

避免将null作为视图根传递(需要解析膨胀布局的根元素上的布局参数)

@Override
public void onClick(View v) {
  AlertDialog alertDialog = new 
  AlertDialog.Builder(getActivity()).create();

  LayoutInflater inflater = getActivity().getLayoutInflater();
  View content = inflater.inflate(R.layout.dialog_customd, null);
  alertDialog.setView(content);

  alertDialog.show();
}

3 个答案:

答案 0 :(得分:4)

您可以尝试使用:

View.inflate(context, R.layout.dialog_customd, null);

答案 1 :(得分:2)

这样做:

View content = inflater.inflate(R.layout.dialog_customd, parent, false);

答案 2 :(得分:0)

万一有人像我一样仍然面临这个问题,@ Dmitry的解决方案很好-

View view = View.inflate(this, R.layout.dialog_set_height, null);

不需要下面的代码-

LayoutInflater inflater = getActivity().getLayoutInflater();