如何在Android中将图像上传到Parse?

我已经能够使用相机拍摄照片或从画廊中取出并使用此代码ImageView中显示它.我现在需要做的是使用该图片并将其上传到Parse.我一直在谷歌上搜索,我没有找到正确的方法来做到这一点.有人可以帮我这个吗?是否可以从ImageView上传图像?谢谢.

protected Button mFromCamera;
protected Button mFromgallery;
protected ImageView mImageView;

private static final int CAMERA_REQUEST = 1888;
private static final int SELECT_PHOTO = 100;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


//Initialize ImageView
mImageView = (ImageView) findViewById(R.id.ImgPrev);
//Initialize Camera
mFromCamera = (Button) findViewById(R.id.FromCamera);

//use camera
mFromCamera.setonClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(cameraIntent,CAMERA_REQUEST);
    } //use camera end

});

//initialize button
mFromgallery = (Button) findViewById(R.id.Fromgallery);

//pick a photo
mFromgallery.setonClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {
        Intent photoPickerIntent = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        photoPickerIntent.setType("image/*");
        startActivityForResult(photoPickerIntent,SELECT_PHOTO);
    }
});//pick a photo end
}



//previewing Image
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data) {
super.onActivityResult(requestCode,resultCode,data);
switch (requestCode) {
    //from the gallery
    case SELECT_PHOTO:
        if (requestCode == SELECT_PHOTO && resultCode == RESULT_OK && null!= data) {
            Uri selectedImage = data.getData();
            String[] filePathColumn = { MediaStore.Images.Media.DATA };

            Cursor cursor = getContentResolver().query(selectedImage,filePathColumn,null,null);
            cursor.movetoFirst();

            int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
            String picturePath = cursor.getString(columnIndex);
            cursor.close();

            mImageView.setimageBitmap(BitmapFactory.decodeFile(picturePath));
        }
        break;
    //from the camera
    case CAMERA_REQUEST:
        if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
            Bitmap photo = (Bitmap) data.getExtras().get("data");
            mImageView.setimageBitmap(photo);
        }
        break;
}
}//Preview Image End
@H_502_10@最佳答案
阅读你的答案:

I already followed the code that you have before. I was able to upload the image to parse. but I dont kNow how to switch the drawable source to be my image from camera/gallery or imageview. – stanley santoso

至 :

Abhishek Bansal

我明白你的问题不是解析你的形象?

试着回答你的问题:

I dont kNow how to switch the drawable source to be my image from camera/gallery or imageview.

1 – R.drawable.androidbegin似乎是你的问题但事实是你已经在你的代码中解析了你的位图:

来自画廊 – >

mImageView.setimageBitmap(BitmapFactory.decodeFile(picturePath));

来自相机 – >

Bitmap photo = (Bitmap) data.getExtras().get("data");

2 – 所以我建议在代码的开头声明一个Bitmap类型的变量

private Bitmap yourbitmap;

3 – 然后在代码中为库和相机分配位图,并使用它来解析它.

...
yourbitmap = BitmapFactory.decodeFile(picturePath);
...
yourbitmap = (Bitmap) data.getExtras().get("data");
...

4 – 最后你可以这样使用你的位图:

//    Bitmap bitmap = BitmapFactory.decodeResource(getResources(),//                            R.drawable.androidbegin);
    // Convert it to byte
                    ByteArrayOutputStream stream = new ByteArrayOutputStream();
                    // Compress image to lower quality scale 1 - 100
                    yourbitmap.compress(Bitmap.CompressFormat.PNG,100,stream);
                    byte[] image = stream.toByteArray();
           ...

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...