編輯:關於Android編程
首先來看下我們實現的效果和360效果的對比:
360手機助手效果演示
本庫實現的效果(Icon來自360手機助手,侵刪)
xml布局文件
注:為了美觀,講每個Button的高度以及固定,設置wrap_content時候是最大高度,為50dp,如果需要設置特定高度請參見下文的方法表格
<com.brioal.bottomtab.view.BottomLayout android:id="@+id/main_tab" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true"> </com.brioal.bottomtab.view.BottomLayout>
數據源添加與基本設置
mList = new ArrayList<>(); mList.add(new TabEntity(R.mipmap.icon_1, "推薦")); mList.add(new TabEntity(R.mipmap.icon_2, "游戲")); mList.add(new TabEntity(R.mipmap.icon_3, "軟件")); mList.add(new TabEntity(R.mipmap.icon_4, "應用圈")); mList.add(new TabEntity(R.mipmap.icon_5, "管理")); mBottomLayout.setList(mList); //設置數據源 mBottomLayout.setNews(1, 0); //設置未讀消息 mBottomLayout.setNews(2, 1); mBottomLayout.setNews(3, 2); mBottomLayout.setNews(4, 3); mBottomLayout.setNews(5, 4); //設置Item點擊事件 mBottomLayout.setSelectedListener(new OnTabSelectedListener() { @Override public void onSelected(int position) { mBottomLayout.cleanNews(position); //清除未讀消息 if (mToast == null) { mToast = Toast.makeText(MainActivity.this, position + "", Toast.LENGTH_SHORT); } else { mToast.setText(position + ""); } mToast.show(); } });
這樣設置之後的效果如示例圖所以,已經可以基本使用,本庫還提供其他自定義效果,如下:
xml屬性 Java方法 功能 colorNormal colorNormal void setColorNormal(int colorNormal) 設置未選中的時候Icon和文字的顏色 colorSelected setColorSelect(int colorSelect) 設置選中的時候Icon和文字的顏色 textSize setTextSize(int textSize) 設置字體的大小 exCircleColor setExCircleColor(int exCircleColor) 設置外圓顏色 inCircleColor setInCircleColor(int inCircleColor) 設置內圓顏色 animDuration setDuration(int duration) 設置點擊漣漪的動畫時長 無 void setList(List<TabEntity> list) 設置數據源,格式為資源文件,菜單名稱 無 void setMenuHeight(int height) 設置菜單高度,默認為50dp,適宜高度 無 void setCurrentIndex(int currentIndex) 設置選中的Tab按鈕下表 無 setSelectedListener(OnTabSelectedListener selectedListener) 設置Item點擊事件 無 setNews(int newSum, int index) 設置指定Item的未讀消息數量 無 cleanNews(int index) 清除指定Item的未讀消息在項目中添加此組件的方式:
Step 1. 項目的build.gradle文件做如下修改
allprojects { repositories { ... maven { url "https://jitpack.io" } } }
Step 2. 添加依賴
dependencies { compile 'com.github.Brioal:BottomTabLayout:1.1' }
總結
以上就是這篇文章的全部內容了,希望能對各位Android開發者們有所幫助,如果有疑問大家可以留言交流。
上一篇我們說到的逐幀動畫和補間動畫,這篇我們著重說下屬性動畫:先看下面兩幅動畫: 上面兩幅動畫就是通過屬性動畫做出來的,是不是比較炫呢!不僅有顯示,也有交互點擊事件。下面
紅米3S是小米在14號推出的新機,紅米3S配備金屬機身、指紋識別、八核主流配置、長續航等特點,性價比很高。隨著紅米3S開啟預約,不僅之後米粉用戶就可以用上這
Android的消息處理有四個核心類:Handler、Looper、Message、MessageQueue,都在android.os包中。Android在UI線程和其他
首先上效果圖 第一張圖是進入該界面的效果,頂部是一個viewpager,下面每個塊都是自定義的view HomeButton,第二張圖是點擊右邊第一個方塊的效果,點擊時方