将活动传递给ListFragment?
我想实现一个片段布局。我有一个活动,服务器作为SplashScreen &从Web获取一些数据并创建我的自定义对象的ArrayList。将活动传递给ListFragment?
通常如果我使用的是ListView,我只需要执行以下操作。
private ArrayList<Articles> articles;
private void isComplete() {
Intent intent = new Intent(SplashScreen.this, ListActivity.class);
intent.putExtra("data", articles);
startActivity(intent);
finish();
}
如何将相同的数据传递给片段?我非常感谢你的帮助。
其简单采取全球一流 而declare public static ArrayList<Articles> articles = new ArrayList<Articles>;
在主要活动中Global.articles = articles
; 现在你可以使用Project中的任何地方。
这取决于的数组列表
putIntegerArrayListExtra(字符串名称,ArrayList的值)
putParcelableArrayListExtra(字符串名称,ArrayList的值)
putStringArrayListExtra(字符串名称,ArrayList中的类型值)
putCharSequenceArrayListExtra(String name ,ArrayList的值)
然后你就可以通过替换把与密钥字符串作为参数,得到你读下一个活动,如
myIntent.getStringArrayListExtra("arrayPeople");
使用putExtra传递价值的意图。使用getSerializableExtra方法来检索数据
如果我有两个活动A和BI要传递的ArrayList>值到活动B,则我将使用以下代码中类从活动A A
通行证的ArrayList>数据到活动乙
Intent intent = new Intent(this, B.class);
HashMap<String, String> hm = new HashMap<String, String>();
hm.put("sunil", "sahoo");
ArrayList<HashMap<String, String>> arl = new ArrayList<HashMap<String, String>>();
arl.add(hm);
intent.putExtra("arraylist", arl);
startActivityForResult(intent, 500);
检索在活动B值
在B类,我将写便接踵而来荷兰国际集团代码检索数据
ArrayList<HashMap<String, String>> arl =(ArrayList<HashMap<String, String>>) getIntent().getSerializableExtra("arraylist");
System.out.println("...serialized data.."+arl);
问题是关于ListFragment。不是关于活动。 – Isuru 2015-07-14 10:53:29
感谢它的工作,但静态变量占用内存空间!任何其他方式可能? – Nischal 2015-09-09 05:54:07
@Nischal是的,你可以参考http://stackoverflow.com/questions/14997855/pass-the-arraylist-with-particular-id-from-one-class-to-another-in-android – 2015-09-09 07:14:19