Я обрезаю изображение из галереи, но не могу установить обрезанное изображение в imageView
, окончательное изображение установлено в качестве изображения по умолчанию, я имею в виду без обрезки, так как установить Обрезанное изображение в ImageView
Это изображение выбора из галереи
newPostImg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
galIntent=new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(Intent.createChooser(galIntent,"select image"),2);
}
});
Это для изображения кадрирования
private void CropImage() {
try {
CropIntent = new Intent("com.android.camera.action.CROP");
CropIntent.setDataAndType(postImageUri,"image/*");
CropIntent.putExtra("crop","true");
CropIntent.putExtra("outputX",180);
CropIntent.putExtra("outputY",180);
CropIntent.putExtra("aspectX",3);
CropIntent.putExtra("aspectY",4);
CropIntent.putExtra("scaleUpIfNeeded",true);
CropIntent.putExtra("return-data",true);
startActivityForResult(CropIntent,1);
}
catch (ActivityNotFoundException ex)
{
}
}
Это onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 0&&resultCode ==RESULT_OK)
CropImage();
if (requestCode==2){
if (data!=null){
postImageUri=data.getData();
CropImage();
newPostImg.setImageURI(postImageUri);
}
}
}
И это мое разрешение
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA"/>
и это imageView xml
<ImageView
android:layout_margin="10dp"
android:id="@+id/newPostImg"
android:layout_width="match_parent"
android:layout_height="250dp"
android:src="@drawable/default1" />