package com.drocode.swithcer;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Handler;
import android.os.Message;
import android.text.Spanned;
import android.text.style.URLSpan;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;
import android.widget.TextView;
public class ImageAdapter extends BaseAdapter{
private List<String> imageUrls; //图片地址list
private Context context;
private ImageAdapter self;
Uri uri;
Intent intent;
ImageView imageView;
public static Integer[] imgs = {
R.drawable.one,
R.drawable.two,
R.drawable.three,
R.drawable.four
};
private String[] myuri = {
"http://www.36939.net/",
"http://www.36939.net/",
"http://www.36939.net/",
"http://www.36939.net/"
};
public ImageAdapter(/*List<String> imageUrls, */Context context) {
// this.imageUrls = imageUrls;
this.context = context;
this.self = this;
}
public int getCount() {
return Integer.MAX_VALUE;
}
public Object getItem(int position) {
return imageUrls.get(position % imgs.length);
}
public long getItemId(int position) {
return position;
}
@SuppressWarnings("unused")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
try {
switch (msg.what) {
case 0: {
self.notifyDataSetChanged();
}
break;
}
super.handleMessage(msg);
} catch (Exception e) {
}
}
};
public View getView(int position, View convertView, ViewGroup parent) {
//Bitmap image;
if(convertView==null){
convertView = LayoutInflater.from(context).inflate(R.layout.item,null); //实例化convertView
Gallery.LayoutParams params = new Gallery.LayoutParams(Gallery.LayoutParams.WRAP_CONTENT,Gallery.LayoutParams.WRAP_CONTENT);
convertView.setLayoutParams(params);
// image = ((ImageActivity)context).imagesCache.get(imageUrls.get(position % imageUrls.size())); //从缓存中读取图片
/* if(image==null){
//当缓存中没有要使用的图片时,先显示默认的图片
image = ((ImageActivity)context).imagesCache.get("background_non_load");
//异步加载图片
LoadImageTask task = new LoadImageTask(convertView);
task.execute(imageUrls.get(position % imageUrls.size()));
} */
convertView.setTag(imgs);
}
else{
//image = (Bitmap) convertView.getTag();
}
// TextView textView = (TextView) convertView.findViewById(R.id.gallery_text);
// textView.setText(position % imgs.length+" sdfsdfdsfdf");
// textView.setBackgroundColor(Color.argb(200, 135, 135, 152));
imageView = (ImageView) convertView.findViewById(R.id.gallery_image);
imageView.setImageResource(imgs[position % imgs.length]);
//设置缩放比例:保持原样
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
// textView.setText(position % imgs.length+" sdfsdfdsfdf");
((ImageActivity)context).changePointView(position % imgs.length);
/* imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//((String) imageView).setSpan(new URLSpan("http://www.36939.net/"), 13, 15,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
});*/
return convertView;
}
/* //加载图片的异步任务
class LoadImageTask extends AsyncTask<String,Void,Bitmap>{
private View resultView;
LoadImageTask(View resultView) {
this.resultView = resultView;
}
// doInBackground完成后才会被调用
@Override
protected void onPostExecute(Bitmap bitmap) {
//调用setTag保存图片以便于自动更新图片
resultView.setTag(bitmap);
}
//从网上下载图片
@Override
protected Bitmap doInBackground(String... params) {
Bitmap image=null;
try {
//new URL对象 把网址传入
URL url = new URL(params[0]);
//取得链接
URLConnection conn = url.openConnection();
conn.connect();
//取得返回的InputStream
InputStream is = conn.getInputStream();
//将InputStream变为Bitmap
image = BitmapFactory.decodeStream(is);
is.close();
((ImageActivity)context).imagesCache.put(params[0],image); //把下载好的图片保存到缓存中
Message m = new Message();
m.what = 0;
mHandler.sendMessage(m);
} catch (Exception e) {
e.printStackTrace();
}
return image;
}
} */
}
yxkfw
- 粉丝: 82
- 资源: 2万+
最新资源
- springboot项目志同道合交友网站.zip
- springboot项目在线考试系统.zip
- springboot项目在线互动学习网站设计.zip
- springboot项目制造装备物联及生产管理ERP系统.zip
- springboot项目智慧校园之家长子系统.zip
- springboot项目中国陕西民俗网.zip
- RISCV GD32VF103 中断向量模式以及非向量模式
- 基于Rust语言的快速异步与多路复用Redis驱动设计源码
- 基于Vue的教程:学生课业帮扶系统前端设计源码
- 基于JavaScript的在线中国象棋对战平台设计源码
- 基于Lua语言的ESP32嵌入式系统开源设计源码
- 基于Vue的云盘前端设计源码
- 自动驾驶控制-车辆三自由度动力学MPC跟踪双移线 matlab和simulink联合仿真,基于车辆三自由度动力学模型的mpc跟踪双移线
- 分布式驱动汽车稳定性控制 采用分层式直接横摆力矩控制,上层滑模控制,下层基于轮胎滑移率最优分配 滑模控制跟踪横摆角速度和质心侧偏角误差 七自由度整车模型输出实际质心侧偏角和横摆角速度,二自由度模
- 基于Vue.js框架的旅游舆情分析项目设计源码
- 基于TypeScript的轻量级JavaScript点阵库设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈