RapidFloatingActionButton的使用心得
2016-01-22 16:03
330 查看
源代码地址:点击打开链接
楼主单凭引用上面这个地址报错找不到引用
起码得加入
Dependencies:
AndroidBucket:The
base library
NineOldAndroids:The
Property Animation library for pre android 3.0
最后gradle代码:
其余的按照官方说明就可以实现啦!
Add
RFAB also needs an implementation of
Here is a quick solution of
can add some items(RFACLabelItem,of course not recommended to add too many items),and config color, drawable, shadow, background image, text size, color of label and animation of each item.
To preview the demo: The top picture effects or Inbox
of Google.
At last,you need combine them by
If you don't like
initialize the content layout and style,and invoke
methods:
add your animations to the animatorSet.
Gradle(Check newest version):
compile 'com.github.wangjiegulu:RapidFloatingActionButton:x.x.x'
楼主单凭引用上面这个地址报错找不到引用
起码得加入
Dependencies:
AndroidBucket:The
base library
NineOldAndroids:The
Property Animation library for pre android 3.0
最后gradle代码:
compile 'com.github.wangjiegulu:AndroidBucket:1.0.4' compile 'com.github.wangjiegulu:RapidFloatingActionButton:1.0.3' //下面这个是NineOldAndroids的库 RapidFloatingActionButton编译需要AndroidBucket,NineOldAndroids compile files("libs/library-2.4.0.jar")
其余的按照官方说明就可以实现啦!
activity_main.xml:
<com.wangjie.rapidfloatingactionbutton.RapidFloatingActionLayout xmlns:rfal="http://schemas.android.com/apk/res-auto" android:id="@+id/activity_main_rfal" android:layout_width="match_parent" android:layout_height="match_parent" rfal:rfal_frame_color="#ffffff" rfal:rfal_frame_alpha="0.7" > <com.wangjie.rapidfloatingactionbutton.RapidFloatingActionButton xmlns:rfab="http://schemas.android.com/apk/res-auto" android:id="@+id/activity_main_rfab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentBottom="true" android:layout_marginRight="15dp" android:layout_marginBottom="15dp" android:padding="8dp" rfab:rfab_size="normal" rfab:rfab_drawable="@drawable/rfab__drawable_rfab_default" rfab:rfab_color_normal="#37474f" rfab:rfab_color_pressed="#263238" rfab:rfab_shadow_radius="7dp" rfab:rfab_shadow_color="#999999" rfab:rfab_shadow_dx="0dp" rfab:rfab_shadow_dy="5dp" /> </com.wangjie.rapidfloatingactionbutton.RapidFloatingActionLayout>
Add
<com.wangjie.rapidfloatingactionbutton.RapidFloatingActionLayout>at outermost layout of RFAB(
<com.wangjie.rapidfloatingactionbutton.RapidFloatingActionButton>)
Properties
RapidFloatingActionLayout:
rfal_frame_color: Frame color when expand RFAB,default is white color rfal_frame_alpha: Frame color alpha(0 ~ 1) when expand RFAB,default is 0.7
RapidFloatingActionButton:
rfab_size: The size of RFAB,only support two size(Material Design): normal: diameter 56dp mini: diameter 40dp rfab_drawable: The drawable of RFAB,default drawable is "+" rfab_color_normal: Normal status color of RFAB。default is white rfab_color_pressed: Pressed status color of RFAB。default is "#dddddd" rfab_shadow_radius: Shadow radius of RFAB。default is 0(no shadow) rfab_shadow_color: Shadow color of RFAB。default is transparent. it will be invalid if the rfab_shadow_radius is 0 rfab_shadow_dx: The shadow offset of RFAB(x-axis)。default is 0 rfab_shadow_dy: The shadow offset of RFAB(y-axis)。default is 0
MainActivity:
@AILayout(R.layout.activity_main) public class MainActivity extends AIActionBarActivity implements RapidFloatingActionContentLabelList.OnRapidFloatingActionContentLabelListListener { @AIView(R.id.activity_main_rfal) private RapidFloatingActionLayout rfaLayout; @AIView(R.id.activity_main_rfab) private RapidFloatingActionButton rfaBtn; private RapidFloatingActionHelper rfabHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); RapidFloatingActionContentLabelList rfaContent = new RapidFloatingActionContentLabelList(context); rfaContent.setOnRapidFloatingActionContentListener(this); List<RFACLabelItem> items = new ArrayList<>(); items.add(new RFACLabelItem<Integer>() .setLabel("Github: wangjiegulu") .setResId(R.mipmap.ico_test_d) .setIconNormalColor(0xffd84315) .setIconPressedColor(0xffbf360c) .setWrapper(0) ); items.add(new RFACLabelItem<Integer>() .setLabel("tiantian.china.2@gmail.com") .setResId(R.mipmap.ico_test_c) .setIconNormalColor(0xff4e342e) .setIconPressedColor(0xff3e2723) .setLabelColor(Color.WHITE) .setLabelSizeSp(14) .setLabelBackgroundDrawable(ABShape.generateCornerShapeDrawable(0xaa000000, ABTextUtil.dip2px(context, 4))) .setWrapper(1) ); items.add(new RFACLabelItem<Integer>() .setLabel("WangJie") .setResId(R.mipmap.ico_test_b) .setIconNormalColor(0xff056f00) .setIconPressedColor(0xff0d5302) .setLabelColor(0xff056f00) .setWrapper(2) ); items.add(new RFACLabelItem<Integer>() .setLabel("Compose") .setResId(R.mipmap.ico_test_a) .setIconNormalColor(0xff283593) .setIconPressedColor(0xff1a237e) .setLabelColor(0xff283593) .setWrapper(3) ); rfaContent .setItems(items) .setIconShadowRadius(ABTextUtil.dip2px(context, 5)) .setIconShadowColor(0xff888888) .setIconShadowDy(ABTextUtil.dip2px(context, 5)) ; rfabHelper = new RapidFloatingActionHelper( context, rfaLayout, rfaBtn, rfaContent ).build(); } @Override public void onRFACItemLabelClick(int position, RFACLabelItem item) { Toast.makeText(getContext(), "clicked label: " + position, Toast.LENGTH_SHORT).show(); rfabHelper.toggleContent(); } @Override public void onRFACItemIconClick(int position, RFACLabelItem item) { Toast.makeText(getContext(), "clicked icon: " + position, Toast.LENGTH_SHORT).show(); rfabHelper.toggleContent(); } }
RFAB also needs an implementation of
RapidFloatingActionContentto fill and assign content of RFAB when it expands.
Here is a quick solution of
RapidFloatingActionContent:
RapidFloatingActionContentLabelList.You
can add some items(RFACLabelItem,of course not recommended to add too many items),and config color, drawable, shadow, background image, text size, color of label and animation of each item.
To preview the demo: The top picture effects or Inbox
of Google.
At last,you need combine them by
RapidFloatingActionButtonHelper.
About
expand style:
If you don't like RapidFloatingActionContentLabelList,you can expand your content style. Extend
com.wangjie.rapidfloatingactionbutton.RapidFloatingActionContent,
initialize the content layout and style,and invoke
setRootView(xxx);method. If you want to add more animations,override those
methods:
public void onExpandAnimator(AnimatorSet animatorSet); public void onCollapseAnimator(AnimatorSet animatorSet);
add your animations to the animatorSet.
相关文章推荐
- 快捷方式锁定至任务栏
- C# 连接数据库(添加,修改,删除)
- 出现 -bash: setup: command not found
- 读“《饥饿游戏》教你如何做产品”(附学习整理XMIND)
- 愿你我这样做人
- channel
- 向量,矩阵,数组,数据框图解
- 70% 的 Android 设备被曝发现可获得最高权限的安全漏洞!
- android 横屏activity跳转竖屏activity报错Resources$NotFoundException
- Cors 跨域Access-Control-Allow-Origin
- c#xml序列化对象,xml标记都缩写了
- 对于jquery实现原理的浅谈
- 网站图标添加方法
- 做夫人的大智慧
- 利用redis + lua解决抢红包高并发的问题
- java string为null时的字符串拼接
- 基础概念之大端模式和小端模式如何记忆
- AngularJS 详解
- 两个Fragment之间如何传递数据
- 使用BitTorrent-Sync实现双机文件双向同步