x10*_*ion 15 android android-animation material-design floating-action-button
我试图将FloatingActionButton纹波设置为类似于此的东西
从材料设计.
问题是我只得到一个没有波纹的"平面样式",它只是将按钮从我的情况下改变为白色到橙色而没有上面链接中显示的动画.
我在这里听到了答案:
但我的FAB仍然很无聊!
编辑:我目前的代码是:XML:
<android.support.design.widget.FloatingActionButton
android:id="@+id/item_activity_fab"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginRight="16dp"
android:src="@drawable/watch"
app:borderWidth="0dp"
app:elevation="6dp"
app:fabSize="normal"
app:layout_anchor="@id/item_activity_title_background"
app:layout_anchorGravity="top|right|end"
app:pressedTranslationZ="12dp"
app:rippleColor="@android:color/transparent"/>
Run Code Online (Sandbox Code Playgroud)
Java的:
mAddToWatchListFAB.setRippleColor(ContextCompat.getColor(this, R.color.orange_6));
Run Code Online (Sandbox Code Playgroud)
我在FAB上尝试了这种方法,但它似乎没有用.我也尝试了我提供的链接中的步骤
Usm*_*bal 37
将以下2个属性添加到浮动操作按钮xml代码中
app:rippleColor="@color/textcolor"
android:clickable="true"
Run Code Online (Sandbox Code Playgroud)
使FAB可点击可增加波纹颜色
你可以按照我的Gabriele Mariotti所说的方式来实现它
你可以这样做:
Run Code Online (Sandbox Code Playgroud)<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/ripple" />ripple.xml 的位置是:
Run Code Online (Sandbox Code Playgroud)<ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:colorControlHighlight"> <item android:id="@android:id/mask"> <shape android:shape="oval"> <solid android:color="?android:colorAccent" /> </shape> </item> </ripple>
正如这里所说,它可以适用于所有纹波需求。
更新
<android.support.design.widget.FloatingActionButton
android:id="@+id/item_activity_fab"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginRight="16dp"
android:src="@drawable/watch"
android:background="@drawable/ripple"
app:borderWidth="0dp"
app:elevation="6dp"
app:fabSize="normal"
app:layout_anchor="@id/item_activity_title_background"
app:layout_anchorGravity="top|right|end"
app:pressedTranslationZ="12dp"/>
Run Code Online (Sandbox Code Playgroud)
并使用上面的ripple.xml。很简单!您所需要做的就是遮盖:)
更新2
对于 API 20 及以下版本,有一些选项可以实现连锁反应。看看Marcin Orlowski所说的以下提示
幸运的是,已经有一些自定义实现可用:
包括与旧版本 Android 兼容的 Material 主题小部件集:
所以你可以尝试其中之一或谷歌搜索其他“材料小部件”等等......
| 归档时间: |
|
| 查看次数: |
11976 次 |
| 最近记录: |