如何使用来自 Arraylist<Hashmap<String,String>> 的 bundle 获取使用 putserializable 传递的值
How to get valus passed using putserializable using bundle from Arraylist<Hashmap<String,String>>
我使用以下内容创建了一个列表,它从具有 getter 和 setter.
的模型 class 中获取值
int k = model.getChildren().size();
for(int i=0;i < k;i++) {
HashMap<String, String> map = new HashMap<String, String>();
galleryChildModel = model.getChildren().get(i);
map.put("caption", galleryChildModel.getImagecaption());
map.put("imageurl", galleryChildModel.getImageurl());
list.add(map);
}
然后我将使用此 setOnItemClickListener
将此值传递给下一个片段
gridchild.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Fragment fragment = new GalleryDetailFragment();
Bundle bundle = new Bundle();
bundle.putSerializable("object", list.get(position));
fragment.setArguments(bundle);
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.container_body, fragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
});
我正在使用
获取相应片段中的值
Bundle bundle = this.getArguments();
if (bundle != null) {
ArrayList<HashMap<String, String>> maps = (ArrayList<HashMap<String, String>>) bundle.get("object"); // here i cannot cast the value to hashmap or any list. im really stuck here can anyone help me out with this
}
我得到的值是这样的
捆绑包[{ 对象=[{
imageurl=http://futhead.cursecdn.com/static/img/15/players/20801.png,caption=Ronaldo.}]}]
如何从中获取数据并设置为文本视图和图像视图....
bundle.putSerializable("object", list.get(position));
存储在 "object" 下的序列化对象是 HashMap 而不是 List,因此您应该转换为 Hashmap:
HashMap<String,String> map = (HashMap<String, String>) bundle.getSerializable("object");
我使用以下内容创建了一个列表,它从具有 getter 和 setter.
的模型 class 中获取值 int k = model.getChildren().size();
for(int i=0;i < k;i++) {
HashMap<String, String> map = new HashMap<String, String>();
galleryChildModel = model.getChildren().get(i);
map.put("caption", galleryChildModel.getImagecaption());
map.put("imageurl", galleryChildModel.getImageurl());
list.add(map);
}
然后我将使用此 setOnItemClickListener
将此值传递给下一个片段 gridchild.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Fragment fragment = new GalleryDetailFragment();
Bundle bundle = new Bundle();
bundle.putSerializable("object", list.get(position));
fragment.setArguments(bundle);
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.container_body, fragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
});
我正在使用
获取相应片段中的值 Bundle bundle = this.getArguments();
if (bundle != null) {
ArrayList<HashMap<String, String>> maps = (ArrayList<HashMap<String, String>>) bundle.get("object"); // here i cannot cast the value to hashmap or any list. im really stuck here can anyone help me out with this
}
我得到的值是这样的
捆绑包[{ 对象=[{ imageurl=http://futhead.cursecdn.com/static/img/15/players/20801.png,caption=Ronaldo.}]}]
如何从中获取数据并设置为文本视图和图像视图....
bundle.putSerializable("object", list.get(position));
存储在 "object" 下的序列化对象是 HashMap 而不是 List,因此您应该转换为 Hashmap:
HashMap<String,String> map = (HashMap<String, String>) bundle.getSerializable("object");