package com.photo;
import java.io.File;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class PhotoAlbum extends Activity {
/** Called when the activity is first created. */
private Spinner mSpinner;
private ImageView mImageView1,mImageView2,mImageView3,mImageView4,mImageView5,mImageView6;
private ImageButton mImageButton_help,mImageButton_close;
private ImageButton mImageButton_pre,mImageButton_next;
private ImageButton mImageButton_take_photo,mImageButton_synchro_photo;
private TextView mTextView_photo_num;
private int H,m,s; //定义时、分、秒
private Calendar c;
private TextView mTextView_hour,mTextView_minute;
private static final String PATH = "/sdcard/photo/";
private String[] photo_folder;
private ArrayAdapter<String> adapter;
private String folder_name;
private List<List<String>> listParent = new ArrayList<List<String>>();
private List<String> listChild = new ArrayList<String>();
private ImageView[] imageViews;
private int list_id = 0;
private int size; //某一文件夹下所有图片的数量
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setScreen();
setContentView(R.layout.main);
//初始化UI对象
findViews();
//事件监听
setOnListener();
//获取当前时间
getCurrentTime();
//定时器
handler.postDelayed(task, 1000);
listPhotoFolder(PATH);
}
public void setScreen(){
//设置全屏窗口
requestWindowFeature(Window.FEATURE_NO_TITLE);
//全屏
getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,
WindowManager.LayoutParams. FLAG_FULLSCREEN);
//横屏显示
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
public void findViews(){
//显示系统时间
mTextView_hour = (TextView) findViewById(R.id.TextView_hour);
mTextView_minute = (TextView) findViewById(R.id.TextView_minute);
mSpinner = (Spinner) findViewById(R.id.Spinner);
mImageView1 = (ImageView) findViewById(R.id.ImageView1);
mImageView2 = (ImageView) findViewById(R.id.ImageView2);
mImageView3 = (ImageView) findViewById(R.id.ImageView3);
mImageView4 = (ImageView) findViewById(R.id.ImageView4);
mImageView5 = (ImageView) findViewById(R.id.ImageView5);
mImageView6 = (ImageView) findViewById(R.id.ImageView6);
imageViews = new ImageView[]{mImageView1,mImageView2,mImageView3,mImageView4,mImageView5,mImageView6};
mImageButton_help = (ImageButton) findViewById(R.id.ImageButton_help);
mImageButton_close = (ImageButton) findViewById(R.id.ImageButton_close);
mImageButton_pre = (ImageButton) findViewById(R.id.ImageButton_pre);
mImageButton_next = (ImageButton) findViewById(R.id.ImageButton_next);
mImageButton_take_photo = (ImageButton) findViewById(R.id.ImageButton_take_photo);
mImageButton_synchro_photo = (ImageButton) findViewById(R.id.ImageButton_synchro_photo);
mImageButton_pre.setVisibility(View.INVISIBLE);
mImageButton_next.setVisibility(View.INVISIBLE);
for(int i = 0;i < 6;i ++){
imageViews[i].setVisibility(View.GONE);
imageViews[i].setEnabled(false);
}
mImageButton_help.setBackgroundDrawable(getResources().getDrawable(R.drawable.help));
mImageButton_close.setBackgroundDrawable(getResources().getDrawable(R.drawable.close));
mImageButton_pre.setBackgroundDrawable(getResources().getDrawable(R.drawable.pre_nor));
mImageButton_next.setBackgroundDrawable(getResources().getDrawable(R.drawable.next_nor));
mImageButton_take_photo.setBackgroundDrawable(getResources().getDrawable(R.drawable.take_photo_normal));
mImageButton_synchro_photo.setBackgroundDrawable(getResources().getDrawable(R.drawable.synchro_photo_normal));
mTextView_photo_num = (TextView) findViewById(R.id.TextView_photo_num);
}
//获取当前时间
public void getCurrentTime(){
c = Calendar.getInstance();
H = c.get(Calendar.HOUR_OF_DAY);
m = c.get(Calendar.MINUTE);
s = c.get(Calendar.SECOND);
mTextView_hour.setText(format(H));
mTextView_minute.setText(format(m));
}
//用定时器来显示时间
private Handler handler = new Handler();
private Runnable task = new Runnable(){
public void run() {
handler.postDelayed(task, 1000);
if(s < 60){
s ++;
}else if(m < 60){
s = 0;
m++;
}else if(H < 24){
m = 0;
H++;
}else{
H = 0;
}
mTextView_hour.setText(format(H));
mTextView_minute.setText(format(m));
}
};
//事件监听
public void setOnListener(){
mSpinner.setOnItemSelectedListener(spinner);
mImageButton_help.setOnClickListener(btn_help);
mImageButton_close.setOnClickListener(btn_close);
mImageButton_pre.setOnClickListener(btn_pre);
mImageButton_next.setOnClickListener(btn_next);
for(int i = 0;i < 6;i ++){
final int n = i;
imageViews[n].setOnClickListener(new ImageView.OnClickListener(){
public void onClick(View v) {
mMakeText(list_id + "--" + n,true);
Intent intent = new Intent();
intent.setClass(PhotoAlbum.this,ShowPhoto.class);
Bundle bundle = new Bundle();
bundle.putInt("list_id", list_id);
bundle.putInt("photo_id", n);
bundle.putString("folder_name", folder_name);
intent.putExtras(bundle);
startActivity(intent);
}
});
}
}
//帮助按钮
ImageButton.OnClickListener btn_help = new ImageButton.OnClickListener(){
public void onClick(View v) {
Toast.makeText(PhotoAlbum.this, "此功能还没完善,谢谢使用!", Toast.LENGTH_SHORT).show();
}
};
//关闭按钮
ImageButton.OnClickListener btn_close = new ImageButton.OnClickListener(){
public void onClick(View v) {
Dialog dialog = new AlertDialog.Builder(PhotoAlbum.this)
.setTitle("退出提示!")
.setMessage("您确定要退出吗?")
.setPositiveButton("确定",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
PhotoAlbum.this.finish();
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
}).create();
dialog.show();
}
};
//下拉列表事件,选择文件夹,显示该文件夹下的所有图片,默认显示第一个文件夹的相片
Spinner.OnItemSelectedListener spinner = new Spinner.OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
folder_name = photo_folder[arg2];
list_id = 0;
listParent.clear(); //重新选择时将父列表和子列表都清空
listChild.clear();
mImageButton_pre.setVisibility(View.VISIBLE);
mImageButton_next.setVisibility(View.VISIBLE);
listPhoto(folder_name);
}
public void onNothingSelected(AdapterView<?> arg0) {
}
};
//上一个图片
ImageButton.OnClickListener btn_pre = new ImageButton.OnClickListener(){
public void onClick(View v) {
list_id --;
showPhotos(folder_name,listParent.get(list_id));
judge();
}
};
//下一个图片
ImageButton.OnClickListener btn_next = new ImageButton.OnClickListener(){
public void onClick(View v) {
list_id ++;
showPhotos(folder_name,listParent.get(list_id));
judge();
}
};
//遍历photo文件夹下的所有文件夹
public v
android PhotoAlbum
3星 · 超过75%的资源 需积分: 10 187 浏览量
2011-05-17
09:31:16
上传
评论
收藏 1.32MB RAR 举报
zly1986a
- 粉丝: 7
- 资源: 99
最新资源
- 基于Matlab人脸肤色定理的教师人数统计+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab霍夫曼变换的表盘读数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab火灾烟雾检测源码带GUI界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的恶劣天气交通标志识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的霍夫曼变换的表盘示数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的车道线识别系统 +源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB 的霍夫曼变换答题卡识别源码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab+bp神经网络的神经网络汉字识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈