我的fragment2类有一个学生数组,我想从我的活动类中获取数组。
我的活动类扩展AppCompatActivity实现了Communicator。我需要它来扩展AppcompatActivity,因为我使用工具栏。
活动类处理片段1和2之间的通信。任何人都有解决方法如何执行此操作?
答案 0 :(得分:0)
在Fragment中定义一个由Activity实现的接口。
更多信息Here
答案 1 :(得分:0)
为了重用Fragment
UI组件,您应该将每个组件构建为一个完全独立的模块化组件,以定义自己的布局和行为。
Activity
可以充当Fragment
的容器。因此,如果一个Fragment
需要将某些内容传递给另一个Fragment
,则可以将其传递给Activity
,而Fragment
又可以将其传递给另一个Fragment
。
理想的做法是在Activity
中定义一个Callback接口,让Fragment
实现它。在Activity
中,您调用其中一个Callback方法将数组或项目传递给它。在该方法的实现中,在Fragment
中,它可以使用它/将其传递给其他Fragment
。
有关Activity
- if(monument.save)
flash[:success] = "Monument created successfully!"
//nothing
else
flash[:error] = "Failed to create monument entry!"
render "monuments/new"
end
通讯的更多信息为here。
答案 2 :(得分:0)
如果您尝试从托管活动访问片段内的对象,通常会在Activity内部保留对片段的引用,并直接在片段上调用“get”方法。
如果是反向(Fragment> Activity),您可以让Activity实现某种接口,并且在片段的onAttach()
方法中,您可以将Activity(或Context)强制转换为接口。