兔兔按鈕——安卓懸浮按鈕
我正在參加「兔了個兔」創意投稿大賽,詳情請看:「兔了個兔」創意投稿大賽
前言
安卓的Material庫提供了許多樣式更精美的控制元件,其中就有懸浮控制元件,它表現出一種懸浮在頁面的效果,也就是有立體效果的,讓人產生這種控制元件是另一個維度而不是這個維度的感覺,下面我們就來看看兔兔按鈕。
正篇
實現過程
首先我們在佈局中加上我們的FloatingActionButton控制元件:
Kotlin
<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" />
這樣預覽頁面就會出現一個懸浮的圓形按鈕,上面是我們的兔兔圖案,而且這個控制元件是出現在螢幕的右下角,接著我們為其增加點選效果:
Kotlin
binding.fab.setOnClickListener {
"FAB Rabbit!".showToast(context)
}
其中Toast用到了我們之前文章中的簡化方法(安卓開發基礎——簡化Toast呼叫方法 - 掘金 (juejin.cn))
執行程式後,我們就可以點選這個兔兔按鈕,浮現一句"FAB Rabbit!"的提示。
寫的過程很簡單,因為其實它的本質還是Button,不過是對其樣式進行了不同的改變,有了質感和陰影,使其呈現出浮現的效果。
當然,我們也可以去改變陰影效果的呈現程度:
XML
app:elevation="8dp"
我們在XML佈局中該控制元件控制elevation屬性,就能為FloatingActionButton指定一個高度,其中,高度值越大,投影範圍越大,但投影效果越淡,而高度越小,投影範圍越小,反而投影效果越濃。
總結
Material庫的確讓安卓很多控制元件效果不一樣,但在我們工作設計中還是很少去用它的,因為它的獨特效果在公司自己的UI設計師與產品眼中說不定最終還不如和IOS一致好。
- 安卓開發一年技術小結——安卓開發技術整理
- 安卓Kotlin開發學習——接著看高階函式
- 兔兔按鈕——安卓懸浮按鈕
- 兔兔進度條Plus——SeekBar充當Progress
- 安卓基礎開發——ReentrantLock的簡單使用
- 安卓開發基礎——使用RecyclerView
- 安卓開發基礎(Java)——TextView的使用
- 安卓開發基礎——弱引用的使用
- 安卓開發基礎——實現音訊檔案的播放
- 讓UI忙碌的安卓Lottie動畫渲染庫(二)
- 強大而靈活的RecyclerView Adapter——BRVAH(框架引入與BaseQuickAdapter使用篇)
- 安卓語言基礎之Kotlin的面向物件程式設計
- 安卓語言基礎之Kotlin高階函式——Lambda表示式(二)
- 大放光彩的安卓Jetpack元件-ViewModel(一)
- 安卓語言基礎之Kotlin高階函式——Lambda表示式(一)
- 安卓開發必備——build.gradle檔案初探(一)
- 安卓開發學Flutter——Dart語法的一些注意點(第二篇)
- 簡單易用的安卓SharedPreferences儲存(資料儲存系列)
- 安卓開發基礎技術——WebView載入網頁
- 原汁原味的安卓檔案儲存(資料儲存系列)