文档章节

改写ListView 实现加载本地图片 非 id

SuShine
 SuShine
发布于 2015/06/25 15:28
字数 334
阅读 144
收藏 0

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

//主Activity
import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

 

import android.app.Activity;

import android.content.Intent;

 

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.ListView;

import android.widget.SimpleAdapter;

import android.widget.SimpleAdapter.ViewBinder;

import android.widget.Toast;

 

public class TestListView extends Activity {


private String sightID;

private Bitmap bmp;

 

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.comment);



bmp = getLoacalBitmap("/sdcard/image.jpg");

ListView listView = (ListView) findViewById(R.id.listView1);  

        MyListAdapter adapter = new MyListAdapter(TestListView.this, getData());

        listView.setAdapter(adapter);  

          

    }  

  public static Bitmap getLoacalBitmap(String url) {

    try {

         FileInputStream fis = new FileInputStream(url);

         return BitmapFactory.decodeStream(fis);

    } catch (FileNotFoundException e) {

         e.printStackTrace();

         return null;

    }

  }

  

 // Bitmap bmp = BitmapFactory.decodeFile("/sdcard/1.jpg");

  private List<Commentinfo> getData(){  

  ArrayList<Commentinfo> arrayList = new ArrayList<Commentinfo>();  

        for(int i=0;i<10;i++){  

 

            arrayList.add(new Commentinfo(bmp, "用户"+i, "内容"+i));  

        }  

        return arrayList;  

          

    }


 

}


//2.Commentinfo.java
package com.su;

 

import android.graphics.Bitmap;

 

public class Commentinfo {


private Bitmap bitmap;  

    

private String comment;

    private String user;   

  

    public Commentinfo(Bitmap bitmap, String user ,String comment ) {  

        super();  

        this.bitmap = bitmap;

        this.user = user ;

        this.comment = comment;

        

    }  

    public Bitmap getBitmap() {

return bitmap;

}

 

public void setBitmap(Bitmap bitmap) {

this.bitmap = bitmap;

}

 

public String getComment() {

return comment;

}

 

public void setComment(String comment) {

this.comment = comment;

}

 

public String getUser() {

return user;

}

 

public void setUser(String user) {

this.user = user;

}

}

3.Mylistadapter.java

package com.su;

import java.util.List;

import android.app.Activity;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.TextView;

 

public class MyListAdapter extends BaseAdapter {

private Activity context;

private List<Commentinfo> list;

 

public MyListAdapter(Activity context, List<Commentinfo> list) {

this.context = context;

this.list = list;

}

 

@Override

public View getView(int position, View convertView, ViewGroup parent) {

LayoutInflater inflater = context.getLayoutInflater();

View itemView = inflater.inflate(R.layout.commentchild, null);

Commentinfo info = list.get(position);

TextView textView = (TextView) itemView.findViewById(R.id.itemUser);

TextView textView1 = (TextView) itemView.findViewById(R.id.itemContent);

ImageView imageView = (ImageView) itemView

.findViewById(R.id.profileImage);

textView.setText(info.getUser());

textView1.setText(info.getComment());

imageView.setImageBitmap(info.getBitmap());

return itemView;

}

 

@Override

public int getCount() {

return list.size();

}

 

@Override

public Object getItem(int position) {

return list.get(position);

}

 

@Override

public long getItemId(int position) {

return position;

}

 


}

// 源码下载http://dl.dbank.com/c0w7tekit4



本文转载自:http://blog.csdn.net/sfshine/article/details/7439674

SuShine
粉丝 132
博文 630
码字总数 160326
作品 0
朝阳
后端工程师
私信 提问
加载中

评论(0)

高效使用Bitmaps(二) 后台加载Bitmap

为什么要在后台加载Bitmap? 有没有过这种体验:你在Android手机上打开了一个带有含图片的ListView的页面,用手猛地一划,就见那ListView嘎嘎地卡,仿佛每一个新的Item都是顶着阻力蹦出来的一...

扔物线
2013/12/12
2.5K
7
Android 的 ListView 动态获取网络图片

通过ListView可以填充一个列表,在列表里可以加上图片,文字等等,但常规的方法只能加载到本地R.id.xxx的图片,无法做到动态获取。其实要 动态获取也不难,关键是靠人品,一种就是去抠源码,...

无鸯
2011/09/05
3.7K
4
Android Listview滑动时不加载数据,停下来时加载数据

本文来源:http://blog.csdn.net/yy1300326388/article/details/45153813 思路:1.Activity中对Listview的滑动进行监听;并且将状态传递到适配器中; 2. 适配器中接收Activity中滑动状态;若是...

正阳Android
2017/11/27
0
0
Android 面试题之Listview(不断更新)

以下所有内容以及实用的知识点已被整理app,欢迎下载 下载方式一:酷安商城搜索Android_程序猿即可下载 下载方式二:扫描下载二维码进行下载 image.png Android 面试题之J2EE(不断更新) An...

蛋蛋松
2017/12/05
0
0
listview加载数据

首先我们需要理清思路:使用ListView显示数据是很方便的,ListVIew的数据之间通过适配器adapter去作为桥梁连接起来。当我们需要使用listview显示大量数据的时候,我们需要使用到分页功能,比...

范大脚脚
2017/11/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Apache Jmeter 入门

Jmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。 本文将通过一个实际的测试例子, 来讲解Jmeter的基本用法。 Jmeter 介绍...

JEECG开源社区
34分钟前
21
0
Spring Cloud 系列之 Apollo 配置中心(二)

本篇文章为系列文章,未读第一集的同学请猛戳这里:Spring Cloud 系列之 Apollo 配置中心(一) 本篇文章讲解 Apollo 部门管理、用户管理、配置管理、集群管理。      点击链接观看:Apo...

哈喽沃德先生
36分钟前
20
0
原生ES-Module

首先是各大浏览器从何时开始支持module的: Safari 10.1 Chrome 61 Firefox 54 (有可能需要你在about:config页面设置启用dom.moduleScripts.enabled) Edge 16 使用方式 首先在使用上,唯一的...

东东笔记
36分钟前
10
0
DevExpress Winforms使用技巧与窍门集合(2020年5月汇总)

下载DevExpress v20.1完整版 DevExpress Winforms Controls 内置140多个UI控件和库,完美构建流畅、美观且易于使用的应用程序。想要体验?点击下载>> 本文中包含一些示例和调整WinForms UI组...

FILA6666
37分钟前
18
0
SwitchGlass for mac 1.4(331) 系统应用快速启动

mac系统应用怎么才能快速启动?这时候你需要一款mac系统应用快速启动软件!SwitchGlass Mac版是Mac电脑上的一款系统应用快速启动工具。SwitchGlass Mac版为你的Mac应用增加了一个专用的应用程...

麦克W
40分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部