我尝试在Dialogs
应用程序(Java)中实现两种类型的Android
,具体取决于设备屏幕大小。
因此,如果设备屏幕宽度较小,然后是某个值,那么我想显示BottomSheetDialogFragment
。如果还有更多,我想展示简单DialogFragment
。我已经为BottomSheetDialogFragment
编写了逻辑,现在了解一些代码将在DialogFragment
中重复。
那么在这种情况下有没有办法减少重复代码的数量? 例如,是否可以为这些对话框创建一些基类?
答案 0 :(得分:2)
对于像这样的情况,我建议某种facade pattern。
通过这种方式,您可以为两种对话框类型创建一个公共外观(如果以后需要,还可以创建更多),这样就可以在那里实现通用逻辑。
Facade可以有createBottomSheetDialogFragment
和createDialogFragment
方法,并且都可以调用公共逻辑的内部方法。
或者您可以实现逻辑,该逻辑决定哪个对话框适合您自己班级中的当前情况,并决定您需要哪个对话框。