내 앱에서 이미지를 클릭 할 때 전체 스크리닝을 구현했습니다. programm에서 이런 식으로 일어납니다 : 나는 imageviews (카메라로 만든 이미지)에서 비트 맵을 다음 활동으로 보내고, 다음 활동은 그것을 받아 들여 이미지 뷰에 비트 맵을 표시합니다. 이미지 뷰가 많고 문제 예를 들어 카메라로 세로로 사진을 만들고 가로 상태로 만들면 프리 베이지 이미지의 전체 화면 이미지가 높이가 압축됩니다. 비트 맵을 다음 활동에 전달하여 스케일링 문제
어떻게 옆 1 명 활성에서 비트 맵을 건네Bundle extras = getIntent().getExtras();
byte[] b = extras.getByteArray("picture");
Bitmap bmp = BitmapFactory.decodeByteArray(b, 0, b.length);
ImageView image = (ImageView) findViewById(R.id.full);
image.setImageBitmap(bmp);
폭과 다음 활동 이미지 뷰의 높이 match_parent 인 방법 : 다음 활동하는 비트 맵을 받아
Bitmap bitmap = params[0];
int h = bm.getHeight();
int w = bm.getWidth();
bitmap = bitmap.createScaledBitmap(bitmap,w/2,h/2, true);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 50, baos);
byte[] b = baos.toByteArray();
Intent intent = new Intent(PhotoAdder.this, FullScreenImage.class);
intent.putExtra("picture", b);
startActivity(intent);
.
이미 h/2로 비트 맵을 스케일링했습니다. –
@Dheerubhai, 나도 알아,하지만 마지막 활동 사진에 따라 다음 활동에서 전에 썼던 것처럼 이미지의 크기가 바뀐다. – Bek
이미지의 경로를 얻는 방법으로 다음 활동으로 전달하고 비트 맵을 사용하여 이미지를 다시로드하십시오. – nakul