網站首頁 編程語言 正文
前言
安卓的Material庫提供了許多樣式更精美的控件,其中就有懸浮控件,它表現出一種懸浮在頁面的效果,也就是有立體效果的,讓人產生這種控件是另一個維度而不是這個維度的感覺,下面我們就來看看兔兔按鈕。
實現過程
首先我們在布局中加上我們的FloatingActionButton控件:
<com.google.android.material.floatingactionbutton.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="16dp" android:src="@drawable/rabbit_logo" />
這樣預覽頁面就會出現一個懸浮的圓形按鈕,上面是我們的兔兔圖案,而且這個控件是出現在屏幕的右下角,接著我們為其增加點擊效果:
binding.fab.setOnClickListener { "FAB Rabbit!".showToast(context) }
其中Toast用到了我們之前文章中的簡化方法(安卓開發基礎——簡化Toast調用方法)
運行程序后,我們就可以點擊這個兔兔按鈕,浮現一句"FAB Rabbit!"的提示。
寫的過程很簡單,因為其實它的本質還是Button,不過是對其樣式進行了不同的改變,有了質感和陰影,使其呈現出浮現的效果。
當然,我們也可以去改變陰影效果的呈現程度:
app:elevation="8dp"
我們在XML布局中該控件控制elevation屬性,就能為FloatingActionButton指定一個高度,其中,高度值越大,投影范圍越大,但投影效果越淡,而高度越小,投影范圍越小,反而投影效果越濃。
總結
Material庫的確讓安卓很多控件效果不一樣,但在我們工作設計中還是很少去用它的,因為它的獨特效果在公司自己的UI設計師與產品眼中說不定最終還不如和IOS一致好。
原文鏈接:https://juejin.cn/post/7197769661455106107
相關推薦
- 2022-05-20 Maven的配置及使用
- 2022-10-04 基于WPF實現帶蒙版的MessageBox消息提示框_C#教程
- 2022-12-05 關于EF的Code?First的使用以及踩坑記錄_實用技巧
- 2022-12-23 Kotlin標準函數與靜態方法基礎知識詳解_Android
- 2023-01-12 python列表添加元素append(),extend(),insert(),+list的區別及說明
- 2022-08-11 C++使用boost::lexical_cast進行數值轉換_C 語言
- 2023-01-15 Android傳感器使用實例介紹_Android
- 2022-04-03 基于Docker實現Redis主從+哨兵搭建的示例實踐_docker
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支