标签:
问题:现在activity使用viewpager,viewpager‘的元素是fragment,该activity作为startActivityForResult的结果,所以在结束时需要传递当前信息给前intent,其中包括当前fragment的 实例中的变量。
说明:这种方法,在activity获得的只是一个类,但是不具备用户交互改变fragment的变量
WillFragment fragment=(WillFragment) mAdapter.getItem(mViewPager.getCurrentItem());
解决:
Activity代码,接收fragment传递message:
private Handler handler; private Intent backIntent; ............. setHandler(new Handler(new Callback() { @Override public boolean handleMessage(Message message) { // TODO Auto-generated method stub backIntent=(Intent) message.obj; return false; } }));
相应fragment代码,向activity传递Message:
Message message = new Message(); message.obj = intent; WillActivity willActivity = (WillActivity) getActivity(); willActivity.getHandler().sendMessage(message);
Done
Activity与Fragment之间交互——Handler
标签:
原文地址:http://www.cnblogs.com/xingyyy/p/4205650.html