作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
JSON 数组
[{
"status": "dummy text",
"statusId": 3,
"Imgstatus": "http://7-themes.com/data_images/out/40/6907072-flowers-abstract-backgrounds.jpg"
},
{
"status": "example text",
"statusId": 5,
"Imgstatus": "http://www.wallmuu.com/top/wallfile/flowers-background-high-definition-beautiful.jpg"
},
{
"status": "sample text",
"statusId": 4,
"Imgstatus": "http://www.twitterevolutions.com/bgs/flowers-and-swirls-twitter-background.jpg"
}]
如何从 "ImgStatus"
获取图像网址 key 按照 "statusId"
上面的关键JsonArray
,并将每个图像 URL 保存在单独的 SharedPreference
上?
"ImgStatus"
key 包含一些图像 url,并且 statusId
是键包含一些属于每个对应图像的id号。
我在这里尝试过,但它有效。有人可以帮我吗?
SharedPreferences sp = (SharedPreferences)getSharedPreferences("MYPREF",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
for (int i=0;i<jsonArray.length();i++) {
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
String statusID = jsonObject1.getString("statusId");
String imgUrls = jsonObject1.getString("Imgstatus");
if (statusID.toString().equals("3")){
editor.putString("IMG_1", imgUrls);
}
if (statusID.toString().equals("4")){
editor.putString("IMG_2", imgUrls);
}
if (statusID.toString().equals("5")){
editor.putString("IMG_3", imgUrls);
}
editor.commit();
}
SharedPreferences sharedPreferences = (SharedPreferences)getSharedPreferences("MYPREF", Context.MODE_PRIVATE);
String img1 = sharedPreferences.getString("IMG_1", "");
String img2 = sharedPreferences.getString("IMG_2", "");
String img3 = sharedPreferences.getString("IMG_3", "");
Log.d(">> Sharedpref img values : ", img1+"\n"+img2+"\n"+img3);
最佳答案
您仅获得一个值,因为您已在 for
循环的第一次迭代中关闭了首选项。在其他迭代中,不保存任何数据。
你需要输入
editor.commit();
for 循环之外(循环之后)。
关于java - 如何在Java Android中比较json对象并获取json数组中的特定json对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34872822/
我是一名优秀的程序员,十分优秀!