草庐IT

DialogFragment

全部标签

android - 在 DialogFragment 中为 AlertDialog 膨胀自定义 View 时出现问题

我正在尝试使用AlertDialog中的自定义View创建DialogFragment。这个View必须是从xml扩展而来的。在我的DialogFragment类中,我有:@OverridepublicDialogonCreateDialog(BundlesavedInstanceState){returnnewAlertDialog.Builder(getActivity()).setTitle("Title").setView(getActivity().getLayoutInflater().inflate(R.layout.dialog,null)).setPositiveBu

android - 防止后退按钮取消 DialogFragment

我有一个可以创建和弹出DialogFragment的Fragment,但是当我点击后退按钮时,即使我明确调用setCancelable(false);也会关闭该对话框;有什么方法可以让我的DialogFragment对后退按钮不敏感?publicclassLoadingDialogFragmentextendsDialogFragment{Stringtitle;Stringmsg;publicLoadingDialogFragment(){this.title="Loading...";this.msg="Pleasewait...";}publicLoadingDialogFrag

android - DialogFragment 相对于 AlertDialog 的优势

这个问题在这里已经有了答案:AndroidDialogFragmentvsDialog(10个回答)关闭6年前。在开发Android应用时,我读到建议使用DialogFragment而不是直接使用AlertDialog来显示警报和确认。这是在例如DialogFragment的文档中完成的:http://developer.android.com/reference/android/app/DialogFragment.html人们还说他们更喜欢这里:AndroidDialogFragmentvsDialog我想知道这种方法的优点,因为代码变得更加复杂。谢谢

java - DialogFragment中的Android findViewById

我正在尝试开发一个日期选择器,在设置时设置TextView的值。但我无法从处理日期选择器的DialogFragment中选择电视。我尝试了getView但应用程序在特定点崩溃。这是我的代码:@SuppressLint("NewApi")publicclassDatePickerFragmentextendsDialogFragmentimplementsDatePickerDialog.OnDateSetListener{TextViewmTextView;@OverridepublicViewonCreateView(LayoutInflaterinflater,ViewGroupc

java - DialogFragment 中未调用 OnCancelListener

我有一个简单的AlertDialog,它显示了一些项目的列表,单击其中一个项目后,单击的项目将传递回封闭的Activity。我还想在用户取消对话框时执行一些默认处理(使用后退按钮)——更具体地说,在这种情况下,我想将一个空字符串传递给Activity。但是,如果我将对话框放在DialogFragment中(来自兼容性包),则不会调用OnCancelListener我用返回按钮关闭对话框。我做错了什么?publicclassSelectItemDialogextendsDialogFragment{publicinterfaceCallback{voidonItemSelected(St

java - 如何将数据从 DialogFragment 发送到 Fragment?

我有一个fragment,它打开一个Dialogfragment来获取用户输入(一个字符串和一个整数)。我如何将这两件事发送回fragment?这是我的DialogFragment:publicclassDatePickerFragmentextendsDialogFragment{StringMonth;intYear;@OverridepublicViewonCreateView(LayoutInflaterinflater,ViewGroupcontainer,BundlesavedInstanceState){getDialog().setTitle(getString(R.s

android - DialogFragment在Android中的位置

我有一个DialogFragment来显示一个类似于弹出屏幕的View。窗口始终出现在屏幕中间。有没有办法设置DialogFragment窗口的位置?我查看了sourcecode但还没有找到任何东西。 最佳答案 试试这样的:@OverridepublicViewonCreateView(LayoutInflaterinflater,ViewGroupcontainer,BundlesavedInstanceState){getDialog().getWindow().setGravity(Gravity.CENTER_HORIZON

android - 应用程序在后台时关闭 DialogFragment 的正确方法

我开始使用DialogFragment,因为它们可以通过方向变化和其他东西很好地工作。但是我遇到了一个讨厌的问题。我有AsyncTask显示进度DialogFragment并将其关闭onPostExecute。一切正常,除非在应用程序处于后台时发生onPostExecute(例如,在按下Home按钮之后)。然后我在DialogFragment关闭时收到此错误-“在onSaveInstanceState之后无法执行此操作”。多哈。常规对话框工作得很好。但不是FragmentDialog。所以我想知道,当应用程序在后台时关闭DialogFragment的正确方法是什么?我并没有真正使用过F

android - 显示 DialogFragment 动画从一个点开始

当用户点击ListView中的一行时,我会显示一个DialogFragment。我想为对话框的显示设置动画,使其从行的中心开始增长。从启动器打开文件夹时可以看到类似的效果。我的一个想法是结合使用TranslateAnimation和ScaleAnimation。还有其他方法吗? 最佳答案 作为DialogFragment一个Dialog类的包装器,你应该为你的基础Dialog设置一个主题来获得你想要的动画:publicclassCustomDialogFragmentextendsDialogFragmentimplementsOn

android - 如何正确关闭 DialogFragment?

文档对Dialog类中的dismiss()方法这么说:Dismissthisdialog,removingitfromthescreen.Thismethodcanbeinvokedsafelyfromanythread.Notethatyoushouldnotoverridethismethodtodocleanupwhenthedialogisdismissed,insteadimplementthatinonStop().在我的代码中,我所做的只是调用getDialog().dismiss()来关闭它。但我没有做任何其他事情,甚至没有使用onStop()。所以我在问究竟如何正确解