PhotoListActivity.java 源代码
package activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.ListAdapter;
import base.HiActivity;
import bean.MyCamera;
import bean.PhotoListItem;
import com.hichip.campro.R;
import common.HiDataValue;
import common.TitleView;
import java.io.File;
import java.util.ArrayList;
import main.adapter.PhotoListAdapter;
import utils.MyToast;
public class PhotoListActivity extends HiActivity implements AdapterView.OnItemClickListener {
GridView gridview;
private ArrayList<PhotoListItem> items = new ArrayList<>();
TitleView titleView;
@Override
protected int setLayoutId() {
return R.layout.activity_photo_list;
}
@Override
protected void init(Bundle bundle) {
initViewAndData();
setListeners();
}
@Override
public void onResume() {
super.onResume();
this.items.clear();
readyData();
this.gridview.setAdapter((ListAdapter) new PhotoListAdapter(this, this.items));
}
private void setListeners() {
this.gridview.setOnItemClickListener(this);
}
private void initViewAndData() {
this.titleView.setButton(0);
this.titleView.setTitle(getString(R.string.all_pic));
this.titleView.setNavigationBarButtonListener(new TitleView.NavigationBarButtonListener() {
@Override
public void OnNavigationButtonClick(int i) {
if (i != 0) {
return;
}
PhotoListActivity.this.finish();
}
});
}
private void readyData() {
for (MyCamera myCamera : HiDataValue.CameraList) {
int fileCount = getFileCount(myCamera.getUid());
if (fileCount > 0) {
this.items.add(new PhotoListItem(fileCount, myCamera.getNikeName(), getPath(myCamera.getUid()), myCamera.getUid()));
}
}
}
public int getFileCount(String str) {
String[] list = new File(HiDataValue.getPathCameraSnapshot(str, this)).list();
if (list == null) {
return 0;
}
return list.length;
}
public String getPath(String str) {
String pathCameraSnapshot = HiDataValue.getPathCameraSnapshot(str, this);
String[] list = new File(pathCameraSnapshot).list();
if (list == null) {
return null;
}
return pathCameraSnapshot + list[0];
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long j) {
if (i < 0) {
return;
}
PhotoListItem photoListItem = this.items.get(i);
if (getFileCount(photoListItem.getUid()) == 0) {
MyToast.showToast(this, getString(R.string.tips_no_picture));
return;
}
Bundle bundle = new Bundle();
bundle.putString(HiDataValue.EXTRAS_KEY_UID, photoListItem.getUid());
Intent intent = new Intent();
intent.putExtras(bundle);
intent.setClass(this, LocalPictureActivity.class);
startActivity(intent);
}
}