草庐IT

DialogFragment

全部标签

android - 从扩展 RecyclerView.ViewHolder 的类启动 DialogFragment

我在recyelerview.viewholder类的onClick()方法中尝试了如下方法。示例中使用的SampleDialogFragment扩展了DialogFragment。@OverridepublicvoidonClick(Viewv){SampleDialogFragmentdf=newSampleDialogFragment();df.show(v.getContext().getSupportFragmentManager(),"Dialog");}我在v.getContext().getSupportFragmentManager()遇到问题。我无法调用getSup

android - DatePickerDialog 已将 androidx.fragment.app.DialogFragment 中的按钮涂黑

这个简单的类:classDateSelectionDialogFragment:DialogFragment(){overridefunonCreateDialog(savedInstanceState:Bundle?):Dialog{valcalendar=Calendar.getInstance()valyear=calendar.get(Calendar.YEAR)valmonth=calendar.get(Calendar.MONTH)valdayOfMonth=calendar.get(Calendar.DAY_OF_MONTH)returnDatePickerDialog(

android - NumberPicker 在 DialogFragment 中不起作用

我正在学习android编程的基础知识,但在使用NumberPicker时遇到了一些问题。我已经接近我想要的了,对话框打开了,小时和分钟数字选择器出现了,但是他们没有上面和下面的数字可以滚动。我也无法使用弹出的键盘编辑数字。我尝试添加一个onValueChange监听器,但是当我使用键盘时它没有生成任何事件。任何人都可以提供有关如何解决此问题的建议吗?到目前为止,我注意到我尝试使用特定Activity或fragment中的小部件做很多事情,但该特定类不支持这些事情。以下是相关代码和图片的fragment:我有一个带有两个按钮的类ClockActivity:...publicclassC

Android 支持 DialogFragment 在屏幕旋转时崩溃

我正在尝试将我的应用程序切换为使用对话框fragment,但在对话框可见时旋转屏幕时我遇到了应用程序崩溃。我可以在下面描述的一个非常简单的应用程序中重现它。在Androidstudio中创建一个新项目并添加一个DialogFragment,如下所示:publicclassMainActivityextendsActionBarActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activit

android - 如何显示来自处理程序的 DialogFragment

我有一个处理程序,它在收到特定消息时显示一个DialogFragment。这通常有效,但如果fragment已经保存,我会收到以下错误:E/AndroidRuntime(3898):FATALEXCEPTION:mainE/AndroidRuntime(3898):java.lang.IllegalStateException:CannotperformthisactionafteronSaveInstanceStateE/AndroidRuntime(3898):atandroid.support.v4.app.FragmentManagerImpl.checkStateLoss(F

android - DialogFragment 是全屏的。怎么变小

我有这个DialogFragment。当我显示它时,它变成全屏,我的意思是它与当前屏幕重叠。如何让它像AlertDialog一样小?我猜是因为RelativeLayout,所以我将LinearLayout包装在RelativeLayout之外,但没有任何变化。publicclassLoginDialogFragmentextendsDialogFragment{@OverridepublicvoidonCreate(finalBundlesavedInstanceState){super.onCreate(savedInstanceState);setStyle(DialogFragm

Android:DialogFragment 中的位图大小超过 32 位

这不是MysteriousstacktraceinAndroiddeveloperconsole(bitmapsizeexceeds32bits)的副本这个问题没有提供一行代码,也没有答案;此外,即使我将位图大小设置为32x32也会出现此错误,它是唯一的位图,因此与内存无关。我想做什么获取ImageView的大小,创建位图然后在Canvas上画一些东西。ImageView和Bitmap大小的Log.e输出是:Width:272Height:136会发生什么下面的代码在Nexus4、Nexus7和DesireHD(CM10)上运行良好,但在模拟器上运行应用程序会出现如下所示的错误(API

android - 在 DialogFragment 上设置文本样式

我有一个简单的DialogFragment,它显示一些文本(其中包含一个年份字符串),然后是一个用户可以滑动并更改年份字符串的SeekBar。在Android3和4上这看起来是正确的...这些平台有浅色背景并使用黑色文本。但是,在Android2上,对话框的背景是深色的,并且仍然使用黑色文本。我不想为不同版本的Android配置不同的配色方案,因为Android系统中必须有一些默认值,我应该能够使用它们来设置我的TextView的样式,以便它使用适当的文本颜色。这是我的显示年份字符串的TextView:我可以对我的TextView应用什么设置,以便它始终由系统适本地着色?请注意,我不能

android - DialogFragment - 获取对话框的宽度

我试图在运行时获取DialogFragment的宽度,我尝试了两种失败的方法。首先:在创建对话框之后在onCreateDialog中publicDialogonCreateDialog(BundlesavedInstanceState){AlertDialog.Builderbuilder=newAlertDialog.Builder(getActivity());......AlertDialogdialog=builder.create();width=dialog.getWindow().getAttributes().width;returndialog;}宽度设置为-1第二个

Android DialogFragment 和配置更改

我在理解如何制作一个简单的DialogFragment来编辑一个(复杂的)对象时遇到了一些麻烦,比如说一个人,有名字和姓氏,以及一个电子邮件地址列表,每个地址都包含一个枚举(工作,家等)和地址。首先,如何正确地将Person对象传递给DialogFragment?我当前的解决方案有一个setPerson(Personperson)方法,该方法在创建DialogFragment之后但在dialog.show()之前调用。这工作正常,直到发生配置更改(用户旋转屏幕)。DialogFragment被重新创建并且对我的Person对象的引用为空。我知道我可以使用onSaveInstanceSt