開源項目:底部動作條(BottomSheet)


  底部動作條(BottomSheet)是一個從屏幕底部邊緣向上滑出的一個面板,給用戶呈現一組功能選項。底部動作條封裝了一組簡單、清晰、無需額外說明的操作。底部動作條(如下圖)可以是列表樣式的,也可以是宮格樣式的。

          

  根據Material Design設計規范,如果只有兩個或更少的操作,可以考慮菜單或者對話框來實現。但是當有三個或三個以上的操作需要提供給用戶選擇時,底部動作條就有了用武之地,可以作為對話框和菜單的替代產品應用到實際的開發實踐中。

  筆者通過繼承Dialog類實現了一個簡單版本、列表樣式的底部動作條,下面介紹具體的使用方法。

  安裝方法 

  在Android Studio中,以導入Module的方式添加BottomSheet依賴(jCenter Remote Library Dependency等待更新...)。

  基本用法         

 1 BottomSheet bottomSheet = new BottomSheet(this);  2 bottomSheet.setTitle("Bottom Sheet");  3 bottomSheet.addItem(R.mipmap.quiz_bottom_download, "下載", new View.OnClickListener() {  4   @Override  5   public void onClick(View v) {  6     makeToast("下載!");  7     bottomSheet.dismiss();  8    }  9 }); 10 bottomSheet.addItem(R.mipmap.quiz_bottom_favorite, "喜歡", new View.OnClickListener() { 11   @Override 12   public void onClick(View v) { 13     makeToast("喜歡!"); 14     bottomSheet.dismiss(); 15   } 16 }); 17 bottomSheet.addItem(R.mipmap.quiz_bottom_answer, "答案", new View.OnClickListener() { 18   @Override 19   public void onClick(View v) { 20     makeToast("答案!"); 21     bottomSheet.dismiss(); 22   } 23 }); 24 bottomSheet.addItem(R.mipmap.quiz_bottom_share, "分享", new View.OnClickListener() { 25   @Override 26   public void onClick(View v) { 27     makeToast("分享!"); 28     bottomSheet.dismiss(); 29   } 30 }); 31 bottomSheet.show();

  設計思想

  關鍵是對setContentView()方法的重寫。setContentView()實際承擔着底部動作條的繪制,事件處理的任務,讀者可以對該方法定制實現自己底部動作條。

  效果截圖

  

  下載鏈接:鏈接: http://pan.baidu.com/s/1gduaTOZ 密碼: jnmu。       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM