目前,我在创建新的activity,想要导入如下数据:
Intent myIntent = new Intent(c, TastePage.class);
myIntent.putExtra("taste", tempTaste);
c.startActivity(myIntent);
然后如下代码在新的activity中检索数据:
//get data from listview
Bundle extras = getIntent().getExtras();
String taste = extras.getString("taste");
为了更好的遵循Android的设计准则,我设定了一个导航栏,然后将activity转化成fragment。但是,不太清楚如何在不同的fragment之间传输数据。我用如下代码加载新的fragment:
FragmentManager man=getFragmentManager();
FragmentTransaction tran=man.beginTransaction();
Fragment_two=new BPTopTastes();
tran.replace(R.id.main, Fragment_two);//tran.
tran.addToBackStack(null);
tran.commit();
我怎样操作才能保证,既可以将数据导入新的fragment当中,又可以完成检索功能呢?
原文:How to pass data between fragments and retrieve it in the new fragment?
答:Elenasys
你可以用Bundle,从源片段(source fragment)中将数据打包进行发送:
然后从目标片段中(target fragment)读取数据:
答:myCode
我的建议是,不一定要使用Bundle进行操作,你可以试着使用设值函数(setter)进行相关值的设定:
......
答:A.Alqadomi
你可以使用Singleton Class(可以在services / activities / fragments ......中找到)在你的Android程序上完成任何配置间的数据传输: