From df3a23bafb3e1316e755fa8f3b68e8767835f25a Mon Sep 17 00:00:00 2001 From: niushuai233 Date: Mon, 4 Dec 2023 23:21:19 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20:fire:=E5=BC=95=E5=85=A5FloatActionMenu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 1 + app/proguard-rules.pro | 4 +- .../cc/niushuai/didicheck/MainActivity.java | 7 +- app/src/main/res/layout/activity_main.xml | 68 +++++++++++++++++-- 4 files changed, 71 insertions(+), 9 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 122d970..735ad02 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -55,6 +55,7 @@ dependencies { // user custom implementation 'com.github.angcyo:CalendarView:3.7.1.37' implementation 'cn.hutool:hutool-core:5.8.23' + implementation 'com.github.clans:fab:1.6.4' // room持久化库 diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 289f9f9..c172913 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -22,4 +22,6 @@ -keepclasseswithmembers class * { public (android.content.Context); -} \ No newline at end of file +} + +-keep class com.github.clans.** { *; } diff --git a/app/src/main/java/cc/niushuai/didicheck/MainActivity.java b/app/src/main/java/cc/niushuai/didicheck/MainActivity.java index c268c9e..89b07e6 100644 --- a/app/src/main/java/cc/niushuai/didicheck/MainActivity.java +++ b/app/src/main/java/cc/niushuai/didicheck/MainActivity.java @@ -6,7 +6,8 @@ import android.view.View; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager.widget.ViewPager; -import com.google.android.material.floatingactionbutton.FloatingActionButton; +import com.github.clans.fab.FloatingActionButton; +import com.github.clans.fab.FloatingActionMenu; import com.google.android.material.snackbar.Snackbar; import cc.niushuai.didicheck.databinding.ActivityMainBinding; @@ -28,9 +29,9 @@ public class MainActivity extends AppCompatActivity { viewPager.setAdapter(sectionsPagerAdapter); - FloatingActionButton didiCheckBtn = binding.didiCheckBtn; + FloatingActionMenu didiCheckMenu = binding.didiCheckMenu; - didiCheckBtn.setOnClickListener(new View.OnClickListener() { + didiCheckMenu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 436e80d..fcdc0b0 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -12,12 +12,70 @@ android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> - + android:layout_alignParentBottom="true" + android:layout_alignParentRight="true" + android:layout_marginRight="10dp" + android:layout_marginBottom="10dp" + android:layout_marginLeft="10dp" + app:menu_fab_size="normal" + app:menu_showShadow="true" + app:menu_shadowColor="#66000000" + app:menu_shadowRadius="4dp" + app:menu_shadowXOffset="1dp" + app:menu_shadowYOffset="3dp" + app:menu_colorNormal="#DA4336" + app:menu_colorPressed="#E75043" + app:menu_colorRipple="#99FFFFFF" + app:menu_animationDelayPerItem="50" + app:menu_icon="@drawable/fab_add" + app:menu_buttonSpacing="0dp" + app:menu_labels_margin="0dp" + app:menu_labels_showAnimation="@anim/fab_slide_in_from_right" + app:menu_labels_hideAnimation="@anim/fab_slide_out_to_right" + app:menu_labels_paddingTop="4dp" + app:menu_labels_paddingRight="8dp" + app:menu_labels_paddingBottom="4dp" + app:menu_labels_paddingLeft="8dp" + app:menu_labels_padding="8dp" + app:menu_labels_textColor="#FFFFFF" + app:menu_labels_textSize="14sp" + app:menu_labels_cornerRadius="3dp" + app:menu_labels_colorNormal="#333333" + app:menu_labels_colorPressed="#444444" + app:menu_labels_colorRipple="#66FFFFFF" + app:menu_labels_showShadow="true" + app:menu_labels_singleLine="false" + app:menu_labels_ellipsize="none" + app:menu_labels_maxLines="-1" + app:menu_labels_style="@style/Animation.Design.BottomSheetDialog" + app:menu_labels_position="left" + app:menu_openDirection="up" + app:menu_backgroundColor="@android:color/transparent" + app:menu_fab_label="" + app:menu_fab_show_animation="@anim/fab_scale_up" + app:menu_fab_hide_animation="@anim/fab_scale_down"> + + + + + + \ No newline at end of file