关于活动与片段之间的交流的问题

时间:2019-10-27 15:48:58

标签: java android kotlin interface fragment

我问我一个关于活动和片段之间的交流的问题。在我的情况下,我只有一项活动和多个片段。 我有2种可能:

  • 使用界面(长)
  • 只需将getActivity(或activity)与强制转换为(activity as MainActivity)."variable"

从逻辑上讲,我的情况第二个是最好的,但是此解决方案没有问题吗?

1 个答案:

答案 0 :(得分:0)

第二个似乎肯定易于实现。但是第一个是松散耦合的,因此易于维护和许多其他好处。

在这方面使用界面是更好的选择,因为它遵循观察者设计模式,该模式经过了充分测试和理解。同样,将类型转换为特定活动会使片段与活动紧密耦合,这不是一个好的设计。为了在其他任何地方使用该片段,您必须每次都更新类型转换部分,这也影响了可重用性,并且违反了SOLID的开放式封闭原则。