друзья,
я хочу установить android:layout_centerVertical = "истинное" свойство расположения через код Java изображения.
может любой вести меня, как достигнуть этого. вот мой код.
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
params.height = (int)totalHeight;
img.setLayoutParams(params);
я попытался использовать setScaleType (ScaleType. FIT_CENTER), но быть бесполезное.
любая справка ценилась бы.
Исправьте меня, если я ошибаюсь, но похоже, что вы пытаетесь установить выравнивание ( или позиционная ориентация) изображения внутри макета? Для этого вам нужно установить свойство gravity для макета, содержащего выравниваемый вид.
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 и выравниваю его так, чтобы оно было размещено вверху, по вертикали в центре.