java - 如何以编程方式创建 DialogFragment 布局

标签 java android android-layout

我需要以编程方式创建 DialogFragment 布局,但我不知道如何进行。我不能使用 xml 布局,因为 DialogFragment 将成为闭源 JAR 文件的一部分。

普通对话框在其构造函数中接受一个 Activity ,因此可以像这样实例化一个新布局:layout = new LinearLayout(this);。另一方面,DialogFragments 通常不会将 Activity 作为参数,所以我不知道如何执行这第一步。

  1. 我应该如何创建布局?
  2. 在构造函数中请求一个 Activity 可以吗?
  3. 创建 DialogFragment 布局与创建普通 Dialog 布局有什么不同吗? 如果您能提供有关手动 DialogFragment 设计的任何其他建议,我将不胜感激。

最佳答案

How should I create the layout?

您希望它看起来如何。如果您不能/不想使用您膨胀并从 onCreateView 方法返回的布局文件,您将必须在代码中构建新对话框的整个 View 层次结构。

Is it OK to ask for an Activity in the constructor?

不需要这样做,Fragment 将获得对 Activity 的引用,您将通过使用 getActivity( )

Is creating a layout of DialogFragment any different from creating a layout of normal Dialog? I will be grateful for any other advice regarding manual DialogFragment design.

不,这没有什么不同。 documentation for the DialogFragment有一个关于如何构建自定义 DialogFragment 的很好示例,您应该检查一下。

关于java - 如何以编程方式创建 DialogFragment 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12704724/

相关文章:

java - 与 System.out.println(); 相比,为什么 JOptionPane 显示不同的输出?

android - 在项目 libs 文件夹中添加 Quickblox-android-0.8.1.jar 文件后,在设备上安装时出现错误

android - Android 设备中 sencha 应用程序的屏幕旋转

android - onConfigurationChanged 不会在 android 中任何时候被调用

Android PagerTabStrip 文本消失

java - android google guice框架时生成No class def found错误

java - 制作列表的子列表,该子列表位于对象存储的列表中

java - 使用 Maven 进行 Google App Engine 数据存储单元测试

android - 以编程方式组合几种类型的xml布局android

android - Recyclerview 项目在给它匹配父项时不会占据屏幕的所有宽度