Ответ 1
Исправьте меня, если я ошибаюсь, но похоже, что вы пытаетесь установить выравнивание (или позиционную ориентацию) изображения внутри макета? Для этого вам необходимо установить свойство гравитации макета, содержащего выровненный вид.
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.FILL_PARENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
ImageView imageView = new ImageView(this);
imageView.setLayoutParams(params);
imageView.setImageBitmap(bitmap);
layout.setGravity(Gravity.CENTER_VERTICAL | Gravity.TOP);
layout.addView(imageView);
В этом примере я программно добавляю изображение в RelativeLayout в свой ресурс макета, добавляя ImageView и выравнивая его так, чтобы оно было размещено в верхней, вертикальной центральной позиции.