我创建了一个viewpager显示多个片段并且还有一个按钮“继续”的活动。按钮用于移动到下一个片段,模仿viewpager的滑动特性。在活动和片段之间进行通信的最佳方式
我保持我的片段非常独立于活动,并且希望将结果传递给父活动,只要发生类似编辑文本值在片段内发生更改的情况。
什么应该是最好的方式来通知有关发生变化内部片段的活动?片段不应该知道谁是父母的活动。
在此先感谢。
我创建了一个viewpager显示多个片段并且还有一个按钮“继续”的活动。按钮用于移动到下一个片段,模仿viewpager的滑动特性。在活动和片段之间进行通信的最佳方式
我保持我的片段非常独立于活动,并且希望将结果传递给父活动,只要发生类似编辑文本值在片段内发生更改的情况。
什么应该是最好的方式来通知有关发生变化内部片段的活动?片段不应该知道谁是父母的活动。
在此先感谢。
最好的方法是使用某种观察者模式,其中活动可以注册到附件上的片段,并实现接口,每当事物发生变化时将被片段调用。
欲了解更多详细的解答:
http://simpledeveloper.com/how-to-communicate-between-fragments-and-activities/
你需要把OnFragmentInteractionListener接口在您的片段:
public interface OnFragmentInteractionListener {
public void onFragmentInteraction(String id);
}
,并实现它在你的活动由 “实现.OnFragmentInteractionListener” 和包括您的活动中的以下方法
@Override
public void onFragmentInteraction(String id) {
// Do something here
}
https://developer.android.com/training/basics/fragments/communicating.html
您需要使用这个库,你可以随时随地在您的应用程序进行通信:由于您加载的主要活动中的片段
,片段中的项目应该可以从主要活动访问,如果您使用findviewbyid来获取片段中的项目到主要活动。 – jgm
最好的办法是这样的:http://simpledeveloper.com/how-to-communicate-between-fragments-and-activities/ – user3089214
在youtube上试试这个..视频.... https://www.youtube .COM /手表?ν= WssDyQ2m4rY –