android floatingactionbutton拖动吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android floatingactionbutton拖动吗相关的知识,希望对你有一定的参考价值。

https://github.com/search?utf8=%E2%9C%93&q=android+drag+&type=Repositories&ref=searchresults

floattingActionButton默认是不可以拖动的,但是你可以看一下这个draggleable
看看它是怎么让view可以拖动的,再自定义floatingButton
有点小难度,不过搞定了之后你又一次升值了
参考技术A 不能的,可以自己重写拖动啊 参考技术B 你是指手指拖动吗

仿知乎FloatingActionButton浮动按钮动画效果实现

最近刚接触使用android studio,那酸爽简直停不下来23333,eclipse什么的以后可以放弃了~

然后在默认生成的第一个项目发现了一个新的控件,即FloatingActionButton,联想到知乎上也有这个控件,于是模仿知乎的效果试一试。

大概分为四个步骤:

Step1:修改原生FloatingActionButton的背景颜色和点击颜色。

Step2:描绘FloatingActionButton的点击动画效果。

Step3:设置蒙版模拟点击以后的界面雾化效果。

Step4:设置点击出现的子按钮与描绘子按钮出现的动画效果(下篇博客详述)。


Step1:

首先在MainActivity中找到初始化FloatingActionButton的语句:


技术分享技术分享

ctrl+左键这个fab资源链接,可以看到原生的FloatingActionButton的xml布局:

 


技术分享以及图片预览:技术分享

下面开始修改背景颜色,在xml中加入

<span>	</span>app:backgroundTint="#ff000099"
        app:rippleColor="#33728dff"
这里之所以设定app的背景颜色和点触颜色,可以从FloatingActionButton的类里看出来:

技术分享

可以看到,设置背景颜色和背景资源的方法都是被禁用的,下面再看类中获得背景颜色和点击颜色的地方:

技术分享

可以看到,都是从默认的属性文件中获得的,所以我们只能修改系统的属性文件才能改变这个按钮的颜色和点击色。

修改后的颜色:技术分享


Step2:

下图演示知乎的FloatingActionButton动画效果:

技术分享


可以看到,第一次点击,按钮先向左旋转135度(左摇小角度再右摇)停止,第二次点击,按钮回到原位置(左摇小角度)。由此可见这是一个模拟了惯性,看起来十分精致的动画效果。

设计思路:

通过两段旋转动画实现模拟惯性效果,虽然看起来效果几乎差不多,但是知乎的可能还用了插值器来设置加速度使得惯性更为逼真。

首先在FloatingActionButton的点击事件中调用两个方法:

技术分享

分别为openMenu():

技术分享

以及closeMenu():

技术分享

这个textview是step3里的蒙版。。。可以直接先跳到step3设置好再写进来QAQ

运行效果:


Step3:

首先在xml文件中设置一个白板:

技术分享

再设置好此蒙版的点击事件:

技术分享

这样逻辑就理顺了,点击白班会使雾化效果消失,再次点击按钮也能达到相同效果。



********************************************************************************分割线(づ ̄ 3 ̄)づ*********************************************************************************

   有一段时间没写博客了,阿里网易腾讯的电面笔试接连来袭,被虐的一塌糊涂~~~~(>_<)~~~~深刻认知到了自己当下的水平与期望的差距,但也只有醒悟才能看清现实,知道该通往何方,明年这个时候,不要让自己后悔!





















以上是关于android floatingactionbutton拖动吗的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )

Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )

android 21 是啥版本

Android逆向-Android基础逆向(2-2)

【Android笔记】android Toast

图解Android - Android核心机制