大佬教程收集整理的这篇文章主要介绍了Android – 解除DialogFragment时刷新“父”片段,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在其中一个选项卡(片段)中,我有一个textview,显示String变量的值.这个选项卡还有一个调用DialogFragment的按钮,我可以通过EditText框编辑所述字符串的值.
这一切都按预期工作,除了一个小故障:一旦DialogFragment被解除并且选项卡再次获得焦点,textview文本不会自动刷新.要刷新它我需要更改选项卡并返回.
是否有可以添加的指令,以便在DialogFragment被解除时,其父活动被重新加载/刷新?
提前致谢.
编辑:仍在寻找解决方案,无法弄清楚如何使用DialogFragment.isdetached
我遇到了类似的情况,显示了一个Fragment中的DialogFragment,其中DialogFragment应该向Fragment报告它的’dismiss.
在你的情况下,你似乎使用(片段)活动而不是片段,但我认为这没有区别.
脚步
>在Activity中创建一个扩展Handler的私有类.覆盖onHandlemessage(),并在那里刷新TextView.
>将YourDialogFragmentDismissHandler的实例传递给YourDialogFragment,例如通过构造函数
>覆盖YourDialogFragment中的onDismiss(),并以最简单的方式通过YourDialogFragmentDismissHandler实例发送一条消息.
码
public class YourActivity extends Activity { ... public void someMethod() { ... YourDialoagFragment yourDialoagFragment = new YourDialoagFragment(new YourDialogFragmentDismissHandler()); yourDialoagFragment.show(); ... } private class YourDialogFragmentDismissHandler extends Handler { @Override public void handlemessage(message msg) { super.handlemessage(msg); // refresh your textview's here } } ... } public class YourDialoagFragment extends DialoagFragment { ... Handler handler; public YourDialoagFragment(Handler handler) { this.handler = handler } ... @Override public void onDismiss(DialogInterface dialog) { super.onDismiss(dialog); handler.sendEmptymessage(0); } ... }
我希望这有帮助!
以上是大佬教程为你收集整理的Android – 解除DialogFragment时刷新“父”片段全部内容,希望文章能够帮你解决Android – 解除DialogFragment时刷新“父”片段所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。