如何使用原生手机相机拍照,然后将其裁剪为方形,并将其作为ParseFile上传到Parse.com。 解析中的表的名称是“Gallery”,并且必须保存的列的名称是“photo”。 任何人都可以帮助我。
P.S。我根本不需要将图片保存到手机中,只需将其上传到解析然后丢弃即可!
提前致谢!
答案 0 :(得分:1)
ImageView img = (ImageView)findViewById(R.id.img);
Bitmap bmp = image;
int w = bmp.getWidth();
int h = bmp.getHeight();
Matrix mtx = new Matrix();
Bitmap bmp2 = Bitmap.createBitmap(bmp, 0, 0, w, h, mtx, true);
BitmapDrawable bmd = new BitmapDrawable(bmp2);
img.setImageDrawable(bmd);
我认为我之前已经这样做过了......我不得不一次使用解析一个项目而且正在搞乱位图。希望这有助于
答案 1 :(得分:0)
好的谢谢你,但在找了一段时间后我找到了解决方案。 如果有人在将来需要它,那就是它。 这是您拍照的方式,并将其上传到Parse.com而不将其保存到设备中。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_picture);
img = (ImageView) findViewById(R.id.imgV);
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
(mFile));
startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
byte[] image_byte_array;
ParseObject post_object = new ParseObject("Gallery");
Bundle extras = data.getExtras();
Bitmap image = (Bitmap) extras.get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
image.compress(Bitmap.CompressFormat.JPEG, 100, stream);
image_byte_array = stream.toByteArray();
ParseFile picture_file = new ParseFile("Picture.jpg", image_byte_array);
picture_file.saveInBackground();
post_object.put("photo", picture_file);
post_object.saveInBackground();
}