Я хотел бы, чтобы это: а ViewPager наложенного на 2 стрелкиширина набора и высота в процентах относительной макете
И я получаю то, что я хочу этот код. Тем не менее, я получил эти предупреждения ворса:
- эта схема бесполезна (для макетов)
- вложенных весов плохо для производительности.
Интересно, есть ли лучший способ получить этот интерфейс, как я хочу.
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.v4.view.ViewPager
android:id="@+id/dialog_instruction_pager"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</android.support.v4.view.ViewPager>
<!-- this LinearLayout overlays the ViewPager -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical" >
<!-- This is just the container for the left and right arrows , it is allocated with only 20% of screen height-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".2"
android:orientation="horizontal" >
<!-- I want to align this to the left and set width only 5% of the parent -->
<ImageButton
android:id="@+id/instruction_dialog_left_arrow"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".05"
android:background="?android:attr/selectableItemBackground"
android:scaleType="fitCenter"
android:src="@drawable/arrow_left_grey" />
<!-- This is the dummy layout, standing in the middle of 2 arrows so they can be align to the left and right of the parent -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".8" >
</LinearLayout>
<!-- I want to align this to the right and set width only 5% of the parent-->
<ImageButton
android:id="@+id/instruction_dialog_right_arrow"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".05"
android:background="?android:attr/selectableItemBackground"
android:scaleType="fitCenter"
android:src="@drawable/arrow_right_grey" />
</LinearLayout>
</LinearLayout>
P.S: Есть ли макет, который позволяет выравнивать детей слева, справа, снизу (как RelativeLayout), а также позволяет установить ширину, высоту в процентах (как атрибут «вес» в LinearLayout)?
Спасибо!
Спасибо за ваш ответ, код, который вы предложили s не устанавливать ширину и высоту ImageView, а просто «wrap_content».Я хотел бы установить ширину и высоту изображения в процентах и независимо от размеров изображения. –
Но почему вы хотите установить ширину и высоту в процентах? По умолчанию размер содержимого будет равен размеру изображения. поместите изображение во все соответствующие чертежи в соответствии с коэффициентом масштабирования. Thats стандарт, предложенный android –
Большое спасибо за ваше терпение, объяснив мне :), действительно ценю это. Я делаю демонстрационный проект, я загружаю и использую изображения с различными размерами из Интернета. Некоторые изображения, если я использую их с оберткой, будут слишком большими на экране. Я не знаю, что вы подразумеваете под «поместите изображение во все соответствующие чертежи в соответствии с коэффициентом масштабирования», можете ли вы быть более конкретным или отправить мне ссылку об этом? Большое спасибо! –