片段与活动之间进行交流的最佳方式

时间:2019-06-21 12:23:53

标签: android android-fragments android-activity

我有一个活动,其中我实现了两个片段,并且我已经阅读到在活动中为这些片段实现接口是最好的方法,但是与在片段的view.setOnClickListener()中传递活动上下文有何不同?然后在活动中实现onclick方法,我也可以设置有关view.setTag()中的点击的数据,那为什么要使用一个界面呢? 由于我在活动中实施onClick方法时,这两种方法是否相同?另外,如果它们不同,那么如何以及哪个更好?

3 个答案:

答案 0 :(得分:1)

根据您的问题,ViewModelLiveData最适合交流。

阅读本文以获取更多详细信息

https://android.jlelse.eu/communicate-between-fragments-and-activity-using-livedata-631526d6357a

答案 1 :(得分:0)

有更多方法可以在活动和片段之间进行交流。例如。 EventBus

基于接口的回调和直接传递活动之间有什么区别?

使用接口时,您并没有将Fragment实现与特定活动联系在一起。如果您想将该片段用于其他活动,则可以轻松地做到这一点。

答案 2 :(得分:0)

从可重用性的角度来看,片段被广泛使用。活动的上下文与该活动相关联,一个活动的上下文与另一活动的上下文不同。 为了实现片段与活动的分离状态,我们使用用户界面回调。现在,当您想在A和B中使用Fragment FragA时,可以将其添加到B中并实现Fragment的接口并开始接收回调。