我问我一个关于activity和fragment之间通信的问题。在我的情况下,我只有一项活动和多个片段。我有两种可能性:使用接口(长)只需使用 getActivity(或 Activity) 并强制转换为 Activity:(activity as MainActivity)."variable"从逻辑上讲,我的情况第二个是最好的,但这个解决方案没有问题?
1 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
第二个似乎肯定更容易实施。但第一个是松散耦合的,因此易于维护并具有许多其他好处。
在这方面使用接口是更好的选择,因为它遵循观察者设计模式,经过充分测试,很好理解。此外,对特定活动的类型转换会使片段与活动强耦合,这不是一个好的设计。为了在其他地方使用该片段,您必须每次都更新类型转换部分,这也妨碍了可重用性,并且违反了 SOLID 的开闭原则。
添加回答
举报
0/150
提交
取消