Android调用拍照和本地相册并上传给服务器

这篇博客详细介绍了如何在Android应用中实现调用摄像头拍照和从本地相册选取图片的功能,并讲解了如何将选中的图片上传到服务器。通过XML布局文件和按钮操作,用户可以轻松上传故障图片。
摘要由CSDN通过智能技术生成
package com.example.yaoc.myapplication;


import android.app.Activity;
import android.app.AlertDialog;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;


import com.alibaba.fastjson.JSON;
import com.example.yaoc.myapplication.util.HttpUtil;
import com.example.yaoc.myapplication.util.LoginUserCache;
import com.example.yaoc.myapplication.util.Until;
import com.google.gson.Gson;


import net.tsz.afinal.FinalHttp;
import net.tsz.afinal.http.AjaxCallBack;
import net.tsz.afinal.http.AjaxParams;


import org.json.JSONException;
import org.json.JSONObject;


import java.io.File;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


/**
 * Created by Administrator on 2016/3/2.
 */
public class UpLoadImageActivity extends Activity implements View.OnClickListener {


    private static final int SELECT_PICTURE = 1;
    private static final int SELECT_CAMER = 2;


    List<String> pathStr;
    Context mContext;


    String path = "";


    ImageView ivDelete;
    MyAdapter ImgAdapter;
    //TODO 根据这个变量来判断是否显示删除图标,true是显示,false是不显示
    private boolean isShowDelete = false;
    List<Bitmap> imgList = new ArrayList<Bitmap>();


    //TODO 上传图片的Button
    private Button add_image, btn_image, back_activity;


    private GridView gv;
    Bundle bundlefid;
    String fid;
    String code;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        setContentView(R.layout.uploadimage_activity);

//账户登陆后的用户code

        code = LoginUserCache.GetUserCode(this);




        initUI();


//账户登陆后前一页传来的用户id

        bundlefid = getIntent().getBundleExtra("fid");
        fid = bundlefid.getString("fid");




    }


    private void initUI() {


        gv = (GridView) findViewById(R.id.gv_img);
        btn_image = (Button) findViewById(R.id.btn_image);
        back_activity = (Button) findViewById(R.id.back_activity);


        back_activity.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


                Intent intent = new Intent(UpLoadImageActivity.this, ListActivity.class);
                startActivity(intent);
                finish();
            }
        });




        /**
         * 图片的控件
         */


        pathStr = new ArrayList<String>();


        mContext = this;
        ivDelete = (ImageView) findViewById(R.id.img_delete);
        add_image = (Button) findViewById(R.id.add_image);


        add_image.setOnClickListener(this);


        gv = (GridView) this.findViewById(R.id.gv_img);
        ImgAdapter = new MyAdapter();
        ImgAdapter.setIsShowDelete(isShowDelete);
        gv.setAdapter(ImgAdapter);
        /**
         * GridView的单击事件
         */
        gv.setOnItemClickListener(new AdapterView.OnItemClickListener() {


            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                ivDelete = (ImageView) findViewById(R.id.img_delete);
                if (isShowDelete == true) {
                    //TODO 如果处于正在删除的状态,单击则删除图标消
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值