我在Framelayout中有一个imageView,而FrameLayout在RelativeLayout中。我正在使用Glide在imageView中加载图像。但是,不是图像进入父级,而是在parentLayout(RelativeLayout)之外。这是布局的屏幕截图。
正如您所见,黑色框架是parentlayout(RelativeLayout)。图像出现在布局中。这是布局的xml代码。
<LinearLayout 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:id="@+id/menuLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp"
tools:context="com.ignite.a01hw909350.kolamdemo.MenuActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="50"
android:orientation="vertical"
android:clipToPadding="false"
android:background="@drawable/menuframe">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<me.zhanghai.android.materialprogressbar.MaterialProgressBar
android:id="@+id/progressView"
style="@style/Widget.MaterialProgressBar.ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:indeterminate="true" />
<ImageView
android:id="@+id/dailyKolam"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:adjustViewBounds="true"
android:scaleType="fitXY"/>
</FrameLayout>
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="10"
android:orientation="horizontal"
android:padding="10dp">
<ImageView
android:id="@+id/activity"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:adjustViewBounds="true"
android:src="@android:drawable/ic_dialog_info" />
<ImageView
android:id="@+id/calendar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:adjustViewBounds="true"
android:src="@android:drawable/ic_menu_my_calendar" />
<ImageView
android:id="@+id/music"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:adjustViewBounds="true"
android:src="@android:drawable/ic_media_play" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="40"
android:gravity="center"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/gallery"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Gallery" />
<Button
android:id="@+id/scanAndDraw"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Scan" />
</LinearLayout>
</LinearLayout>
请告诉我问题出在哪里。
答案 0 :(得分:1)
相对布局的边界包括黑框的边框。图像在RelativeLayout的范围内。如果您希望它在黑框内,您应该在ImageView的所有边上应用填充。填充量必须通过反复试验确定,并且对于不同的移动屏幕尺寸将有所不同。