在android中扭曲一个视图

时间:2018-06-11 06:38:39

标签: java android

我想在android中扭曲视图,

例如需要在屏幕顶部创建wave,任何时候都可以将其转换为直线

使用底部导航栏中的按钮在底部导航栏中创建一个wave

请访问屏幕截图:

screenshot 1

screenshot 2

screenshot 3

1 个答案:

答案 0 :(得分:0)

这是根据材料IO的新设计。它在材料设计2中引入。您需要添加锚点以使用该类型的视图。

需要注意一些变化。

  • 这是AppBar,它位于底部而不是BottomNavigatioView
  • 它可用于多种用途,因此请明智地选择使用方式。
  • 您可以根据需要修改设计。

以下代码可用于实现该功能。

<android.support.design.widget.CoordinatorLayout
    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">

  <!-- Other components and views -->

  <com.google.android.material.bottomappbar.BottomAppBar
      android:id="@+id/bar"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_gravity="bottom"
      app:navigationIcon="@drawable/ic_menu_24"/>

  <com.google.android.material.floatingactionbutton.FloatingActionButton
      android:id="@+id/fab"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      app:layout_anchor="@id/bar"/>

</android.support.design.widget.CoordinatorLayout>

通过设置FloatingActionButton或致电BottomAppBarapp:layout_anchor可以锚定到CoordinatorLayout.LayoutParams#setAnchorId(int)

  

注意:您需要在Android P版本中引入这些内容   拥有Android studio 3.2或更高版本。

查看此链接以获取详细说明:

Implementing BottomAppBar: Material Components for Android