【问题标题】:How to make floating action bar center bottom [closed]如何使浮动操作栏中心底部[关闭]
【发布时间】:2019-06-24 16:00:22
【问题描述】:

你能帮我制作这样的浮动操作栏,并固定在中心底部的位置。

我使用约束布局

【问题讨论】:

  • 你能分享你的xml布局吗?

标签: java android xml android-studio android-layout


【解决方案1】:

在约束布局内使用水平方向的线性布局。将线性布局约束到约束布局的底部、末尾和开头。

这是一个简单的例子。

<android.support.constraint.ConstraintLayout 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="match_parent"
tools:context=".MainActivity">

<LinearLayout
    android:id="@+id/floating_action_bar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="8dp"
    android:layout_marginLeft="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginRight="8dp"
    android:layout_marginBottom="8dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    android:orientation="horizontal">

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/a"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/b"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/x"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>

【讨论】:

    【解决方案2】:

    forbottom Center in constraintlaout 将此约束设置为浮动按钮 如果要添加多个浮动按钮,请将所有此 FloatingActionButton 添加到 LinearLayout orientation="horizo​​ntal" 并将此约束添加到 LinearLayout 在图片中,这不是 FloatingActionButton,它们是视图,因此您可以根据需要添加

      app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
    

    【讨论】:

      【解决方案3】:

      如果您想在约束布局中将视图放置在屏幕的底部中心,您需要将以下内容添加到您的视图中:

      app:layout_constraintBottom_toBottomOf="parent"
      app:layout_constraintStart_toStartOf="parent"
      app:layout_constraintEnd_toEndOf="parent"
      

      这是一个例子:

      <?xml version="1.0" encoding="utf-8"?>
      <android.support.constraint.ConstraintLayout
          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="match_parent">
      
          <android.support.design.widget.FloatingActionButton
              android:id="@+id/floatingActionButton"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginBottom="8dp"
              android:layout_marginEnd="8dp"
              android:layout_marginStart="8dp"
              android:clickable="true"
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toStartOf="@+id/floatingActionButton2"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintHorizontal_chainStyle="packed"
              app:srcCompat="@android:color/holo_orange_dark" />
      
          <android.support.design.widget.FloatingActionButton
              android:id="@+id/floatingActionButton2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginBottom="8dp"
              android:layout_marginEnd="8dp"
              android:layout_marginStart="8dp"
              android:clickable="true"
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toStartOf="@+id/floatingActionButton3"
              app:layout_constraintStart_toEndOf="@+id/floatingActionButton"
              app:layout_constraintHorizontal_chainStyle="packed"
              app:srcCompat="@android:color/holo_orange_dark" />
      
          <android.support.design.widget.FloatingActionButton
              android:id="@+id/floatingActionButton3"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginBottom="8dp"
              android:layout_marginEnd="8dp"
              android:layout_marginStart="8dp"
              android:clickable="true"
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toStartOf="@+id/floatingActionButton4"
              app:layout_constraintStart_toEndOf="@+id/floatingActionButton2"
              app:layout_constraintHorizontal_chainStyle="packed"
              app:srcCompat="@android:color/holo_orange_dark" />
      
          <android.support.design.widget.FloatingActionButton
              android:id="@+id/floatingActionButton4"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginBottom="8dp"
              android:layout_marginEnd="8dp"
              android:layout_marginStart="8dp"
              android:clickable="true"
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toStartOf="@+id/floatingActionButton5"
              app:layout_constraintStart_toEndOf="@+id/floatingActionButton3"
              app:layout_constraintHorizontal_chainStyle="packed"
              app:srcCompat="@android:color/holo_orange_dark" />
      
          <android.support.design.widget.FloatingActionButton
              android:id="@+id/floatingActionButton5"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginBottom="8dp"
              android:layout_marginEnd="8dp"
              android:layout_marginStart="8dp"
              android:clickable="true"
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toEndOf="parent"
              app:layout_constraintStart_toEndOf="@+id/floatingActionButton4"
              app:layout_constraintHorizontal_chainStyle="packed"
              app:srcCompat="@android:color/holo_orange_dark" />
      </android.support.constraint.ConstraintLayout>
      

      底部的视图链接在一起,它们都约束到屏幕底部,第一个约束到左侧,约束到父级的左开始,最后一个约束到右侧,约束到右端父母的。

      【讨论】:

        【解决方案4】:

        移除水平偏移属性。

        我猜你有这样的app:layout_constraintHorizontal_bias="0.76"

        只需将其删除或设置为0.5

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-10-05
          • 2020-01-14
          • 1970-01-01
          • 2021-04-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多