永发信息网

android 怎么调用手机相册

答案:1  悬赏:70  手机版
解决时间 2021-04-05 07:18
android 怎么调用手机相册
最佳答案
[java] view plain copy
private void doPickPhotoAction() {
Context context = EditContact.this;

// Wrap our context to inflate list items using correct theme
final Context dialogContext = new ContextThemeWrapper(context,
android.R.style.Theme_Light);
String cancel="返回";
String[] choices;
choices = new String[2];
choices[0] = getString(R.string.take_photo); //拍照
choices[1] = getString(R.string.pick_photo); //从相册中选择
final ListAdapter adapter = new ArrayAdapter(dialogContext,
android.R.layout.simple_list_item_1, choices);

final AlertDialog.Builder builder = new AlertDialog.Builder(
dialogContext);
builder.setTitle(R.string.attachToContact);
builder.setSingleChoiceItems(adapter, -1,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
switch (which) {
case 0:{
String status=Environment.getExternalStorageState();
if(status.equals(Environment.MEDIA_MOUNTED)){//判断是否有SD卡
doTakePhoto();// 用户点击了从照相机获取
}
else{
showToast("没有SD卡");
}
break;

}
case 1:
doPickPhotoFromGallery();// 从相册中去获取
break;
}
}
});
builder.setNegativeButton(cancel, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}

});
builder.create().show();
}
}


protected void doTakePhoto() {
try {
// Launch camera to take photo for selected contact
PHOTO_DIR.mkdirs();// 创建照片的存储目录
mCurrentPhotoFile = new File(PHOTO_DIR, getPhotoFileName());// 给新照的照片文件命名
final Intent intent = getTakePickIntent(mCurrentPhotoFile);
startActivityForResult(intent, CAMERA_WITH_DATA);
} catch (ActivityNotFoundException e) {
Toast.makeText(this, R.string.photoPickerNotFoundText,
Toast.LENGTH_LONG).show();
}
}

public static Intent getTakePickIntent(File f) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE, null);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
return intent;
}


private String getPhotoFileName() {
Date date = new Date(System.currentTimeMillis());
SimpleDateFormat dateFormat = new SimpleDateFormat(
"'IMG'_yyyy-MM-dd HH:mm:ss");
return dateFormat.format(date) + ".jpg";
}

// 请求Gallery程序
protected void doPickPhotoFromGallery() {
try {
// Launch picker to choose photo for selected contact
final Intent intent = getPhotoPickIntent();
startActivityForResult(intent, PHOTO_PICKED_WITH_DATA);
} catch (ActivityNotFoundException e) {
Toast.makeText(this, R.string.photoPickerNotFoundText1,
Toast.LENGTH_LONG).show();
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
古尔邦节维语祝福,宰牲节祝福语 英文
如图所示,当闭合开关S时,电灯L1和L2都不亮
在公司时拿回扣,离开公司还能拿回扣吗
速求brad paisley letter to me歌词的中文翻
华为荣耀V8电信是不是还是外挂55nm的基带
关于友情的名言作文,小学生作文《我收获了友
开车明明不安全,为什么还是有很多人开车回家
分数的分子分母同时乘同一个数,分数的大小不
渔夫和金鱼是谁写的
单选题陈亚忠是“高黎贡山生态茶叶有限公司董
ibm笔记本用pcmcia口有线网卡,为什么无显
求40式太极拳带口令MP3音乐
女生送火腿肠是什么意思?
某商品进价100元,提高30%后出售,旺季过后,
房地产和物业管理我该如何抉择
推荐资讯
手机储存卡microSDHCtm是什么意思?
我的男朋友不理我,厌恶我怎么给他写信啊!
74年属虎和90年属蛇可以配吗?
有谁知道南京滴滴客服的电话
祝福两个人长久的成语,关于祝福开车平安的句
ppap交样是工装样件还是生产件
lv哪款男包包最百搭
描写淮南职教的作文
求lol劫操作,看到人开大之后用哪些技能。或
力帆轩朗和宝骏730那个好
are you afraid that it will be pain ful?中
02166543345号码是否为公安派出所电话
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?