【发布时间】:2016-01-05 10:20:37
【问题描述】:
使用 android 相机 Intent 拍照时,我得到一个低质量的位图图像。我想知道是否有可能使这个图像质量不错。
我搜索了一些关于它的信息,我认为我必须使用“EXTRA_OUTPUT”(http://developer.android.com/reference/android/provider/MediaStore.html#ACTION_IMAGE_CAPTURE)
我很挣扎,因为我不知道该放在哪里,也不知道它是否能解决我的问题。
按下 btnTakePhoto 后,我更改布局并打开 android 相机。位图以第二种布局(低质量)显示。 这是我的代码:
import android.content.Intent;
import android.graphics.Bitmap;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ImageView;
public class Camera extends AppCompatActivity {
ImageButton btnTakePhoto;
ImageView imgTakenPhoto;
private static final int CAM_REQUEST = 1313;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.camera);
btnTakePhoto = (ImageButton) findViewById(R.id.buttonFoto);
imgTakenPhoto = (ImageView) findViewById(R.id.genomenFoto);
btnTakePhoto.setOnClickListener(new btnTakePhotoClicker());
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == CAM_REQUEST){
setContentView(R.layout.share);
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
imgTakenPhoto = (ImageView) findViewById(R.id.genomenFoto);
imgTakenPhoto.setImageBitmap(thumbnail);
}
}
class btnTakePhotoClicker implements Button.OnClickListener {
@Override
public void onClick(View v) {
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAM_REQUEST);
}
}
//CameraShare layout -- back button - Go back to first layout
public void ibBackToPhotograph(View v) {
setContentView(R.layout.camera);
btnTakePhoto = (ImageButton) findViewById(R.id.buttonFoto);
btnTakePhoto.setOnClickListener(new btnTakePhotoClicker());
}
}
编辑:图像未保存在任何地方。接受后在facebook上发布(snapchat)
【问题讨论】:
-
不是通过拍摄照片时传回给您的额外信息。但是您应该能够为要保存的图像提供路径(包括不冲突的名称)。这样一来,您就知道在拍完照片后在哪里寻找照片。
标签: android bitmap android-camera-intent