我尝试使用PercentRelativeLayout中包含的不同图像创建复杂的布局。
实际上我无法设法显示ImageView我想将其宽度设置为总宽度的百分比(父宽度)。
以下是我的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/content_home_page"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.example.avescera.remindme.HomePageActivity"
tools:showIn="@layout/app_bar_home_page"
android:foregroundGravity="center_vertical"
android:gravity="center_horizontal">
<android.support.percent.PercentRelativeLayout
android:id="@+id/RLayoutHPLoan"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true">
<ImageView
android:id="@+id/imgHPLoanAmnt"
app:srcCompat="@drawable/ic_money_bar"
app:layout_widthPercent="40%"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignStart="@id/imgHPGreenArrow" />
<ImageView
android:id="@+id/imgHPGreenArrow"
app:srcCompat="@drawable/ic_green_arrow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" />
<ImageView
android:id="@+id/imgHPLoanBtn"
app:srcCompat="@drawable/ic_add_loan_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_centerVertical="true"
android:layout_alignParentStart="true" />
<TextView
android:text="@string/home_loan_arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:id="@+id/txtVHPLoanTitle"
android:textColor="#FFFFFF"
android:textAllCaps="true"
android:textSize="36sp"
android:textStyle="normal|bold" />
</android.support.percent.PercentRelativeLayout>
<android.support.percent.PercentRelativeLayout
android:id="@+id/RLayouHPBorrow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_marginTop="16dp"
android:layout_below="@id/RLayoutHPLoan">
<ImageView
app:srcCompat="@drawable/ic_red_arrow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/imgHPRedArrow"
android:adjustViewBounds="true"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" />
<ImageView
android:id="@+id/imgHPBorrowBtn"
app:srcCompat="@drawable/ic_add_borrow_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="16dp" />
<TextView
android:text="@string/home_borrow_arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:id="@+id/txtVHPBorrowTitle"
android:textColor="#FFFFFF"
android:textAllCaps="true"
android:textSize="36sp"
android:textStyle="normal|bold" />
</android.support.percent.PercentRelativeLayout>
</LinearLayout>
我得到的屏幕:
在左上角,您会看到(进入红色方块)我的ImageView未显示。 我想要显示的图像是一个正方形,其中包含图像(所有图像都是图像)。
我希望看到的东西(我知道它与我建造的东西不完全相同:)),绿色箭头下面的灰色方块(内有钱)必须显示在我的箭头顶部(不要介意改变):
答案 0 :(得分:0)
使用PercentRelativeLayout是父
并将PercentRelativeLayout作为子
使用app:layout_aspectRatio =&#34; 150%&#34;
例如
<android.support.percent.PercentRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorWhite"
android:layout_margin="5dp"
>
<android.support.percent.PercentRelativeLayout
app:layout_aspectRatio="90%"
app:layout_heightPercent="50%"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<ImageView
android:id="@+id/iv_writers_image"
android:layout_width="0dp"
android:layout_height="0dp"
android:src="@drawable/error_image"
android:adjustViewBounds="true"
android:scaleType="fitXY"
app:layout_heightPercent="70%"
app:layout_widthPercent="100%"
/>
<TextView
android:id="@+id/tv_writers_name"
app:layout_heightPercent="20%"
app:layout_widthPercent="100%"
android:layout_below="@+id/iv_writers_image"
android:layout_centerHorizontal="true"
android:maxLines="1"
android:text="TextView"
android:gravity="center"
android:textColor="@color/colorBlack"
android:textSize="18dp"/>
</android.support.percent.PercentRelativeLayout>
</android.support.percent.PercentRelativeLayout>