I will have to scale each image beforehand, I will not use ImageView functions to scale the images.
final int square_size = 150;
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.android_img);
Bitmap bm2 = BitmapFactory.decodeResource(getResources(), R.drawable.android_img2);
ImageView image_view1 = new ImageView(this);
image_view1.setImageBitmap(Bitmap.createScaledBitmap(bm, square_size, square_size, false));
image_view1.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
image_view1.setX(0);
image_view1.setY(0);
image_view1.setScaleType(ImageView.ScaleType.MATRIX);
ImageView image_view2 = new ImageView(this);
image_view2.setImageBitmap(Bitmap.createScaledBitmap(bm2, square_size, square_size, false));
image_view2.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
image_view2.setX(square_size + 20);
image_view2.setY(0);
image_view2.setScaleType(ImageView.ScaleType.MATRIX);
ImageView image_view3 = new ImageView(this);
image_view3.setImageBitmap(Bitmap.createScaledBitmap(bm2, square_size, square_size, false));
image_view3.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
image_view3.setX(0);
image_view3.setY(square_size + 20);
image_view3.setScaleType(ImageView.ScaleType.MATRIX);
ImageView image_view4 = new ImageView(this);
image_view4.setImageBitmap(Bitmap.createScaledBitmap(bm, square_size, square_size, false));
image_view4.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
image_view4.setX(square_size + 20);
image_view4.setY(square_size + 20);
image_view4.setScaleType(ImageView.ScaleType.MATRIX);
RelativeLayout views = new RelativeLayout(this);
views.addView(image_view1);
views.addView(image_view2);
views.addView(image_view3);
views.addView(image_view4);
setContentView(views);
And the result looks plausible! How wonderful it can be!
