【问题标题】:How do I change shape of Extended Floating Action Button?如何更改扩展浮动操作按钮的形状?
【发布时间】:2020-01-11 15:03:38
【问题描述】:

我正在尝试将我的操作按钮的形状从这个默认形状更改为矩形。这是我的 xml:

<com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:cornerRadius="90dp"
        android:text="@string/create_player_text"
        android:fontFamily="@font/proximanova_semibold"
        app:layout_constraintHorizontal_bias="0.99"
        app:layout_constraintVertical_bias="0.01"/>

【问题讨论】:

  • 为什么不是一个简单的 MaterialButton?
  • @GabrieleMariotti materialButton 在我需要在滚动视图中添加时没有隐藏和显示方法

标签: android android-layout android-button floating-action-button material-components-android


【解决方案1】:

如果你想改变ExtendedFloatingActionButton的形状,你可以在布局中使用shapeAppearanceOverlay属性:

    <com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
        app:shapeAppearanceOverlay="@style/ShapeAppearanceOverlayExtended"
        ../>

与:

  <style name="ShapeAppearanceOverlayExtended" parent="">
    <item name="cornerFamily">rounded</item>
    <item name="cornerSize">0dp</item>
  </style>

如果您想要圆角半径,只需更改 &lt;item name="cornerSize"&gt;0dp&lt;/item&gt; 中的值即可。

【讨论】:

    【解决方案2】:

    我认为 Material Button 非常适合您的需求,Material Button 也具有矩形形状,角落半径小。您应该尝试使用扩展浮动操作按钮。

    查看官方文档如何使用指南

    Material Button

    【讨论】:

      【解决方案3】:

      像这样创建一个 xml 文件:

      <?xml version="1.0" encoding="utf-8"?>
      <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
          <item>
              <shape
                  android:shape="rectangle">
                  <corners android:radius="@dimen/_100sdp"/>
              </shape>
          </item>
      </layer-list>
      

      并在您的扩展工厂中使用它 - 与shapeAppearanceOverlay一起使用

      <com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
                  style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  app:shapeAppearanceOverlay="@drawable/bg_circle_black"
                  android:text="Sign in to setup follow page"
                  android:textAlignment="center"
                  app:layout_anchor="@id/scrollView"
                  app:layout_anchorGravity="bottom|center|center_horizontal" />
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-08-21
        • 2020-08-16
        • 2015-06-23
        • 2020-05-11
        • 2019-12-04
        • 2017-06-13
        • 2018-12-11
        相关资源
        最近更新 更多