6、ImageAdapter
public class ImageAdapter extends BaseAdapter {
private Context mContext;// 上下文
public ImageAdapter(Context c) {
this.mContext = c;
}
@Override
public int getCount() {
if (imageList != null) {
return imageList.size();
} else {
return 0;
}
}
@Override
public Object getItem(int position) {
if (imageList != null) {
return imageList.get(position);
}
return position;// 获取图片在库中的位置
}
@Override
public long getItemId(int position) {
return position;// 获取图片在库中的位置
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Log.i("Tag", position + "");
ImageView imageView = new ImageView(mContext);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setLayoutParams(new Gallery.LayoutParams(220, 247));
if (imageList.get(position).getIsNull().equals(ISTRUE)) {
imageView.setImageResource(R.drawable.scene_ic_loading_invert);
} else {
imageView.setImageBitmap(imageList.get(position).getImage());
}
return imageView;
}
public float getScale(boolean focused, int offset) {
return Math.max(0, 1.0f / (float) Math.pow(2, Math.abs(offset)));
}
}
7、查找图片是加载的进度条
@Override
protected Dialog onCreateDialog(int id) {
if (id == 0) {
ProgressDialog loadingDialog = new ProgressDialog(this);
loadingDialog.setMessage("正在扫描中...,请稍候!");
loadingDialog.setIndeterminate(true);
loadingDialog.setCancelable(true);
return loadingDialog;
}
return null;
}
8、5、从sd卡里获取图片
public void getSD(String dir) {
File f = new File(dir);
File[] files = f.listFiles();
if (files != null) {
for (int i = 0; i < files.length; i++) {
String[] s = new String[2];
File file = files[i];
if (file.isFile()) {
if (ImageManager.getImageFile(file.getPath())) {
System.out.println("file " + String.valueOf(file));
s[0] = file.getPath();
s[1] = file.getName();
pathList.add(s);
}
} else if(file.isDirectory()){
getSD(String.valueOf(file.getAbsolutePath()));
}
}
}
}