android 选择图片 相册选择 马上拍照
2013-09-24 14:16
465 查看
public class MainActivity extends Activity implements OnClickListener { private ImageView iv; private int SELECT_PICTURE = 1; // 从图库中选择图片 private int SELECT_CAMER = 2; // 用相机拍摄照片 private Bitmap bmp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); } private void init() { iv = (ImageView) findViewById(R.id.imageView1); iv.setOnClickListener(this); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK) { Uri uri = data.getData(); ContentResolver cr = this.getContentResolver(); try { if (bmp != null) { bmp.recycle(); bmp = BitmapFactory.decodeStream(cr.openInputStream(uri)); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } iv.setImageURI(uri); } else { Toast.makeText(MainActivity.this, "选择图片失败,请重新选择", Toast.LENGTH_SHORT) .show(); } } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.imageView1: showChoosePhotoDialog(); break; default: break; } } private void showChoosePhotoDialog() { CharSequence[] items = { "相册", "相机" }; AlertDialog dialog = new AlertDialog.Builder(this) .setTitle("选择图片来源") .setItems(items, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub if (which == SELECT_PICTURE) { Intent intent = new Intent( MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, SELECT_CAMER); } else { Intent intent = new Intent( Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("image/*"); startActivityForResult(intent, SELECT_PICTURE); } } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.cancel(); } }).create(); dialog.show(); } }
相关文章推荐
- android 拍照和选择相册图片剪切
- Android开发——相册拍照_02.将拍照得到或相册中选择的图片显示在ImageView中
- Android实现拍照,以及从相册选择图片裁剪功能同时保存在本地
- Android实现选择相册图片和拍照,并手动截图返回图片路径和Bitmap对象
- 一款用于在Android设备上获取照片(拍照或从相册、文件中选择)、裁剪图片、压缩图片的开源工具库
- Android拍照,相册选择图片以及Android6.0权限管理
- Android WebView 选择图片并上传(调用相机拍照/相册/选择文件)
- Android中拍照和从相册选择图片,并剪裁(二)
- Android - Android 7.0 拍照,相册选择和系统图片裁剪和删除适配
- Android中的支持拍照和选择本地相册的图片选择器
- Android 拍照/相册 选择图片工具
- Android 调用系统相机拍照(适配7.0)、从图库选择图片、从数据库读取联系人信息、相册图片、扫描文件
- Android从相册选择图片和调用系统摄像头拍照
- Android 通过拍照或相册选择图片并裁剪(精简版)
- Android拍照,相册选择图片以及Android6.0权限管理
- Android 拍照、从相册选择图片
- Android上传图片之调用系统拍照和从相册选择图片
- Android 从相册和拍照选择图片
- Android实现拍照、选择相册图片并裁剪功能
- Android大图片裁剪之手机拍照和从相册中选择注意点