Android实现从手机相册上传头像以及拍照上传到服务器
来源:互联网 发布:量产u盘工具 mac 编辑:程序博客网 时间:2024/05/16 11:34
package com.example.helloworld;import java.io.File;import com.a.a.Tempest;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.content.Intent;import android.graphics.Bitmap;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.provider.OpenableColumns;import android.util.Log;import android.view.View;import android.widget.ImageView;public class PhotoActivity extends Activity { //2 1 0 private static final String TAG="photoactivity"; private static final int CROP_SMALL_PICTURE = 0; private static final int TAKE_PICTURE = 1; private static final int CHOOSE_PICTURE = 2; private ImageView iv_iamge; private Bitmap mBitmap; Uri tmpUri; //private Button btn_upload; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.main); iv_iamge=(ImageView) findViewById(R.id.iv_image); } public void upload(View v){ AlertDialog.Builder builder=new AlertDialog.Builder(PhotoActivity.this); builder.setTitle("添加图片"); String [] items={"从相册选择照片","拍照" }; builder.setNegativeButton("取消", null); builder.setItems(items,new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub switch (which) { case CHOOSE_PICTURE: Intent openIntent=new Intent(Intent.ACTION_GET_CONTENT); openIntent.setType("image/*"); //用startActivityForResult方法,重写onActivityResult()方法,拿到图片进行裁剪操作 startActivityForResult(openIntent, CHOOSE_PICTURE); break; case TAKE_PICTURE: Intent openCamreaIntent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE); tmpUri=Uri.fromFile(new File(Environment.getExternalStorageDirectory(),"test_image.jpg")); // 将拍照所得的相片保存到SD卡根目录openCamreaIntent.putExtra(MediaStore.EXTRA_OUTPUT, tmpUri); startActivityForResult(openCamreaIntent, TAKE_PICTURE); break; default: break; } } }); builder.show(); } /**裁剪图片的方法 * */ protected void cutImage(Uri uri){ if(uri==null){ Log.i(TAG, "this is not exist"); } tmpUri=uri; Intent intent=new Intent("com.android.camera.action.CROP"); intent.setDataAndType(uri, "image/*"); //设置裁剪 intent.putExtra("crop", true); //设置aspectX y设置宽高的比例 intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); //outputX 剪裁图片的宽高 intent.putExtra("outputX", 150); intent.putExtra("outputY", 150); intent.putExtra("return-data", true); startActivityForResult(intent, CROP_SMALL_PICTURE); } /** * 保存裁剪之后的图片并显示到界面上 */ protected void setImageToView(Intent data){ Bundle extras=data.getExtras(); if(extras!=null){ mBitmap=extras.getParcelable("data"); iv_iamge.setImageBitmap(mBitmap); } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case TAKE_PICTURE: // 对图片进行裁剪处理 cutImage(tmpUri); break; case CHOOSE_PICTURE: // 对图片进行裁剪处理返回 cutImage(data.getData()); break; case CROP_SMALL_PICTURE: //将裁剪后的图片上传并设置到到ImageView控件中 if(data!=null){ setImageToView(data); } break; default: break; } }}
0 1
- Android实现从手机相册上传头像以及拍照上传到服务器
- 安卓手机拍照,从相册选择,上传头像
- 上传头像 拍照 相册
- Android 上传头像的拍照跟相册
- ionic 的项目实现从手机相册选取图片或拍照并上传至服务器
- 带你实现拍照||从相册选择->裁剪->上传服务器
- php实现手机拍照上传头像功能
- php实现手机拍照上传头像功能
- 调用系统相册上传头像到服务器
- Android之修改用户头像并上传服务器(实现手机拍照和SD卡选择上传)
- Android实现批量照片上传至服务器,拍照或者从相册选择
- Android实现批量照片上传至服务器,拍照或者从相册选择
- Android头像--拍照上传
- Android头像上传/拍照/从相册选择Demo(个人信息模块会用到)
- Android开发之头像上传(包含拍照,从相册选择图片,裁剪等)
- Android调用摄像头拍照和从相册中选择(上传、更换头像)
- 上传图片到服务器和图片内存处理以及拍照或从相册选取图片的小总结
- android头像相册/拍照选取,裁剪及上传综合案例
- 〖2016〗吉首大学第六届新星杯暨程序设计大赛(新生网络同步赛)-题解
- 安卓应用程序流畅性评测之Dumpsys篇
- Android NDK 应用 Clang 编译器
- 在windows下安装opencv3+tensorflow的python开发环境
- PHP HelloWorld程序
- Android实现从手机相册上传头像以及拍照上传到服务器
- 适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位
- jQuery
- csdn如何自定义博客栏目
- Android 照相机权限的声明
- PAD图
- Oracle 11g---------数据字典
- liunx常见命令归纳详解
- ImageMagick相关