我需要以编程方式创建DialogFragment布局,但我不知道如何继续。我不能使用xml布局,因为DialogFragment将是闭源JAR文件的一部分。
普通对话框在其构造函数中接受一个Activity,因此可以实例化一个新的布局,如下所示:layout = new LinearLayout(this);
。另一方面,DialogFragments通常不会将Activity作为参数,因此我不知道如何执行第一步。
答案 0 :(得分:2)
我应该如何创建布局?
您希望它看起来如何。如果您不想/不想使用扩展并从onCreateView
方法返回的布局文件,则必须在代码中构建新对话框的整个视图层次结构。
在构造函数中请求Activity是否可以?
没有必要,Fragment
会获得对Activity
的引用,您可以使用getActivity()
来引用该上下文。
创建DialogFragment的布局与创建一个不同 普通对话框的布局?我将不胜感激任何其他建议 关于手动DialogFragment设计。
不,这没有什么不同。 documentation for the DialogFragment
就如何构建自定义DialogFragment
提供了一个很好的示例,您应该查看它。