【发布时间】:2017-07-31 15:20:28
【问题描述】:
试图为 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();
}
【问题讨论】:
-
没有,AFAIK,除了使用快速修复来抑制 Lint 警告。虽然总的来说 Lint 的建议是合理的,但这是我认为您无法访问父容器的情况之一。
-
那么考虑到您的回复,使用
@SuppressLint("InflateParams") View content = inflater.inflate(R.layout.dialog_customd, null);是个好主意吗? -
这是否是一个“好主意”取决于您。 :-)
-
酷。感谢您的提示。
-
您知道如何使用this question 解决问题吗?我花了数周时间试图解决它,但没有运气。
标签: android android-layout android-alertdialog layout-inflater