package com.linju.android_photoUtils;
import java.io.Serializable;
import java.util.List;
import roboguice.inject.InjectView;
import roboguice.util.Ln.BaseConfig;
import com.linju.android_property.base.BaseActivity;
import com.linju.android_property.viewutils.WPTextView;
import com.linju.android_property2.R;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ListView;
import android.widget.TextView;
/**
* 自定义的图片选择器
* @author Administrator
*
*/
public class GetPicActivity extends BaseActivity implements OnClickListener{
public static final String EXTRA_IMAGE_LIST = "imagelist";
// ArrayList<Entity> dataList;//用来装载数据源的列表
List<ImageBucket> dataList;
@InjectView(R.id.listview)
ListView mListView;
ImageBucketAdapter adapter;// 自定义的适配器
AlbumHelper helper;
public static Bitmap bimap;
@InjectView(R.id.back)
Button back;
@InjectView(R.id.title)
WPTextView titlebar;
@InjectView(R.id.edit_or_add)
Button editOrAdd;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_bucket);
titlebar.setText(getString(R.string.selectImage));
helper = AlbumHelper.getHelper();
helper.init(getApplicationContext());
initData();
initView();
}
/**
* 初始化数据
*/
private void initData() {
// /**
// * 这里,我们假设已经从网络或者本地解析好了数据,所以直接在这里模拟了10个实体类,直接装进列表中
// */
// dataList = new ArrayList<Entity>();
// for(int i=-0;i<10;i++){
// Entity entity = new Entity(R.drawable.picture, false);
// dataList.add(entity);
// }
dataList = helper.getImagesBucketList(false);
bimap=BitmapFactory.decodeResource(
getResources(),
R.drawable.loading_error);
}
/**
* 初始化view视图
*/
private void initView() {
back.setOnClickListener(this);
adapter = new ImageBucketAdapter(GetPicActivity.this, dataList);
mListView.setAdapter(adapter);
mListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
/**
* 根据position参数,可以获得跟GridView的子View相绑定的实体类,然后根据它的isSelected状态,
* 来判断是否显示选中效果。 至于选中效果的规则,下面适配器的代码中会有说明
*/
// if(dataList.get(position).isSelected()){
// dataList.get(position).setSelected(false);
// }else{
// dataList.get(position).setSelected(true);
// }
/**
* 通知适配器,绑定的数据发生了改变,应当刷新视图
*/
// adapter.notifyDataSetChanged();
Intent intent = new Intent(GetPicActivity.this,
ImageGridActivity.class);
intent.putExtra(GetPicActivity.EXTRA_IMAGE_LIST,
(Serializable) dataList.get(position).imageList);
intent.putExtra(ImageGridActivity.EXTRA_TITLE, (Serializable)dataList.get(position).bucketName);
startActivity(intent);
finish();
}
});
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// switch (v.getId()) {
// case R.id.back:
// if (Bimp.act_bool){
// Intent intent = new Intent(GetPicActivity.this,PublishedActivity.class);
// Bundle bundle = new Bundle();
// bundle.putBoolean("pubsort", true);
// intent.putExtras(bundle);
// startActivity(intent);
// Bimp.act_bool=false;
// }
// this.finish();
//
// break;
//
// default:
// break;
// }
}
}