adapter-listVew显示从mySql中获取的Jason数组里面的图片

问题描述

listVew显示从mySql中获取的Jason数组里面的图片

图片存储在本地,在mysql中存储的是图片的本地地址,已经封装成json,传到了客户端,怎么才能显示在listView里面

解决方案

private void findMeat() {
// TODO Auto-generated method stub
new Thread(new Runnable() {
public void run() {
String url="http://220.167.40.78/HotPot/servlet/MeatServlet?";
String data="dishes_kind="+"荤菜";
final String state=HttpAccessUtil.Get(url, data);//state是服务器传过来的Jason数组
runOnUiThread(new Runnable() {
@Override
public void run() {
try {
List> jsonList=JsonToMap.getList(state);//将Jason转换成list
final SimpleAdapter adapter =new SimpleAdapter(MeatActivity.this,jsonList , R.layout.meat_item,new String[]{
"img","name","price"}, new int[]{R.id.dishes_picture,R.id.dishes_name,R.id.dishes_price});
lv_meat.setAdapter(adapter);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
}).start();

解决方案二:

public class JsonToMap {

public static Map<String,String> getMap(String jsonString){
    JSONObject jsonObject;
    try {
        jsonObject=new JSONObject(jsonString);
        String img = jsonObject.getString("dishes_picture");
        String name = jsonObject.getString("dishes_name");
        String price = jsonObject.getString("dishes_price");

        Map<String,String> valueMap=new HashMap<String, String>();
        valueMap.put("img", img);
        valueMap.put("name", name);
        valueMap.put("price", price);

        return valueMap;
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return null;

}
public static List<Map<String, String>> getList(String jsonString){
    List<Map<String, String>> list=null;
    try {
        JSONArray jsonArray=new JSONArray(jsonString);
        JSONObject jsonObject;
        list=new ArrayList<Map<String,String>>();
        for(int i=0;i<jsonArray.length();i++){
            jsonObject=jsonArray.getJSONObject(i);
            list.add(getMap(jsonObject.toString()));
        }
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return list;
}

}

时间: 2024-09-10 16:06:40

adapter-listVew显示从mySql中获取的Jason数组里面的图片的相关文章

mysql-百度地图从MySql中获取经纬度

问题描述 百度地图从MySql中获取经纬度 <%@ page contentType="text/html; charset=utf-8" %> <%@ page language="java" %> <%@ page import="com.mysql.jdbc.Driver" %> <%@ page import="java.sql.*" %> <% String dr

MYSQL中获取得最后一条记录的语句_Mysql

在MySQL中,使用auto_increment类型的id字段作为表的主键,并用它作为其他表的外键,形成"主从表结构",这是数据库设计中常见的用法.但是在具体生成id的时候,我们的操作顺序一般是:先在主表中插入记录,然后获得自动生成的id,以它为基础插入从表的记录.这里面有个困难,就是插入主表记录后,如何获得它对应的id.通常的做法,是通过"select max(id) from tablename"的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表加以

如何在MySQL中获取元数据

MySQL提供了以下三种方法用于获取数据库对象的元数据: 1)show语句 2)从INFORMATION_SCHEMA数据库里查询相关表 3)命令行程序,如mysqlshow, mysqldump 用SHOW语句获取元数据 MySQL用show语句获取元数据是最常用的方法,下面提供了几种典型用法: show databases; --列出所有数据库 show create database db_name; --查看数据库的DDL show tables; --列出默认数据库的所有表 show

mysql中获取一天、一周、一月时间数据的各种sql语句写法_Mysql

创建表: 复制代码 代码如下: create table if not exists t(   id int,   addTime datetime default '0000-00-00 00:00:00′) 添加两条初始数据: insert t values(1, '2012-07-12 21:00:00′);insert t values(2, '2012-07-22 21:00:00′); 一.当天或当日插入的数据: 1.传统对比判断:SELECT * FROM `t` WHERE DA

java-在DialogBox数组中获取值

问题描述 在DialogBox数组中获取值 在数组中获取选中项目的值,代码: final String items[] = {""Blue""Green""Orange""};final AlertDialog.Builder alert = new AlertDialog.Builder(this); alert.setTitle(""Money Maker"");alert.setI

listview 局部刷新 adapter中获取控件报空指针

问题描述 listview 局部刷新 adapter中获取控件报空指针 adapter中写如下方法: public void updateView(int itemIndex,View view) { if(view == null) { return; } //从view中取得holder ViewHolder holder = (ViewHolder) view.getTag(); holder.tv_content=(TextView)view.findViewById(R.id.othe

微信获取BAE上的mysql中的数据问题

问题描述 微信获取BAE上的mysql中的数据问题 <?php $dbname = 'ePjMlhlEtSYcyqaWDIMM'; /*从环境变量里取出数据库连接需要的参数*/ $host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP'); $port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT'); $user = getenv('HTTP_BAE_ENV_AK'); $pwd = getenv('HTTP_BAE_ENV_SK'); /*

new-websocket获取服务器内容后实时显示在网页中

问题描述 websocket获取服务器内容后实时显示在网页中 <script> ws = new WebSocket("ws://192.168.0.171:1235"); ws.onopen = function () { // alert("连接成功"); ws.send('tom'); // alert("给服务端发送一个字符串:tom"); } ws.onmessage = function (e) { document.ge

[MySQL 源码] 从buffer pool中获取空闲block流程

当我们将一个page读入内存时,需要先为其分配一个block,从buffer pool中获取.入口函数为buf_LRU_get_free_block 之前在http://mysqllover.com/?p=303有简要介绍,这里详细看看,当然,跟最近博客的主题一样,我们还是主要针对压缩表来分析. 以下分析基于Percona Server 5.5.18 buf_LRU_get_free_block loop: 1.block = buf_LRU_get_free_only(buf_pool) 首先