【发布时间】:2017-08-04 14:57:34
【问题描述】:
我制作了我的 Android 应用。客户的要求是将徽标放在底部工具栏上。问题是徽标应该放在底部工具栏的一半上方和内容的一半上方。问题是我不能到负边距,所以我不能将徽标图像从内容向下移动,也不能在工具栏上向上移动。它应该是这样的:
我制作了两个工具栏——透明和填充。但问题是我无法将内容的底部拉伸到填充工具栏的顶部,因为它位于透明工具栏内。这是图片和代码。
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorBrandColor"
app:popupTheme="@style/Theme.AppCompat.Light.DarkActionBar"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<ImageView
android:id="@+id/imageViewTop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:src="@drawable/sponge_bob" />
</android.support.v7.widget.Toolbar>
<FrameLayout
android:id="@+id/content_frame_to_inflate"
android:layout_width="wrap_content"
android:layout_height="0dp"
app:layout_constraintTop_toBottomOf ="@+id/toolbarTop"
app:layout_constraintBottom_toTopOf="@+id/toolbarBottomTransparent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarBottomTransparent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/content_frame_to_inflate"
app:contentInsetStart="0dp">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintBottom_toBottomOf="parent" >
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarBottomFilled"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorBrandColor"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginTop="32dp"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="64dp"
android:src="@drawable/sponge_bob_logo"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
</android.support.v7.widget.Toolbar>
</android.support.constraint.ConstraintLayout>
我怎样才能做正确的布局?
【问题讨论】:
-
如果你使用 relativelayout 而不是 constraint 会发生什么?
-
在相对布局中,如何在工具栏顶部居中图像?
-
底部工具栏的作用是什么?
-
您可以在此处放置一个布局并将背景设置为蓝色。然后将图像放在布局下。应该覆盖它
-
稍后工具栏中会有控件(如搜索)。问题是内容底部是图像的顶部,而不是工具栏的顶部。您可以看到比较两个屏幕截图的差异。如果我没有图像,这不是问题。添加一个布局或工具栏并不能让我正确地限制内容的底部