Как я могу выбрать эскиз изображения из галереи?Мне нужно маленькое изображение, потому что я должен хранить его в sqlite db.Я пытался изменить большое изображение в миниатюру, прежде чем сохранить его в БД, но он все еще не может прочитать столбец, в котором хранится изображение.
открытый класс MainActivity расширяет AppCompatActivity {
final static int RESULT_LOAD_IMAGE = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button buttonLoadImage = (Button) findViewById(R.id.button1);
buttonLoadImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent gallery = new Intent(Intent.ACTION_PICK, Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(gallery, RESULT_LOAD_IMAGE);
}
});
}
// Как я пытался изменить размер изображения:
@ Переопределить защищенный void onActivityResult (int reqCode, intresultCode, данные о намерениях) {super.onActivityResult (reqCode, resultCode, data);
if (resultCode == RESULT_OK) {
try {
final Uri imageUri = data.getData();
final InputStream imageStream = getContentResolver().openInputStream(imageUri);
selectedImage = BitmapFactory.decodeStream(imageStream);
final int THUMBNAIL_HEIGHT = 200;
final int THUMBNAIL_WIDTH = 200;
Float width = new Float(selectedImage.getWidth());
Float height = new Float(selectedImage.getHeight());
Float ratio = width/height;
selectedImage = Bitmap.createScaledBitmap(selectedImage, (int)(THUMBNAIL_HEIGHT*ratio), THUMBNAIL_HEIGHT, false);
int padding = (THUMBNAIL_WIDTH - selectedImage.getWidth())/2;
binding.imgView.setPadding(padding, padding, padding, padding);
binding.imgView.setBackgroundColor(0);
binding.imgView.setImageBitmap(selectedImage);
} catch (FileNotFoundException e) {
e.printStackTrace();
Toast.makeText(AddRecipe.this, "Something went wrong", Toast.LENGTH_LONG).show();
}
}else {
Toast.makeText(AddRecipe .this, "You haven't picked Image",Toast.LENGTH_LONG).show();
}
}