#android #imageview
#Android #imageview
Вопрос:
<RelativeLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight=".40"
android:orientation="vertical" >
<ImageView
android:id="@ id/First"
android:layout_width="match_parent"
android:layout_height="160px"
android:layout_centerInParent="true"
android:padding="5dp" />
<ImageView
android:id="@ id/Second"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/play_small" />
</RelativeLayout>
Я хочу установить высоту первого изображения с помощью id -> First в соответствии со вторым идентификатором изображения -> Second . Я устанавливаю src для второго представления изображения из xml и загружаю первое изображение из какой-либо веб-ссылки.
Ответ №1:
Вы можете использовать LayoutParams
для этой задачи. Во-первых, вы должны найти свою вторую ImageView
высоту и установить ее на LayoutParams
свою первую ImageView
.
LayoutParams params = firstImage.getLayoutParams();
params.height = secondImage.getWidth();
firstImage.setLayoutParams(params);
Надеюсь, это вам поможет.
Комментарии:
1. Я попытался получить высоту второго изображения, используя эти два метода ImageView.getLayoutParams().height и ImageView.getHeight(); Первый возвращает -2, а другой возвращает ноль
2. попробуйте установить первую высоту изображения только после загрузки и установки второй.
3. Проблема решена. Я сделал это вот так. imgSecond.getDrawable().getMinimumHeight(); и настройка первого, например LayoutParams params = firstImage.getLayoutParams(); params.setHeight = imgSecond.getDrawable().getMinimumHeight() ; firstImage.setLayoutParams(параметры);
4. Если этот ответ вам поможет, пожалуйста, примите то же самое. 😉