1. 程式人生 > >Android 框架Dileber :四、SelectDialog的使用

Android 框架Dileber :四、SelectDialog的使用

框架地址 dileber android框架 希望大家能多多star一下
selectDialog 可以新增多個選擇內容展示效果如下
圖片描述
上圖是用dileber架構的im即時聊天系統,當前的操作為長按出現選擇選單。
選單的使用方法,首先建立一個model
IMessageSelectModel 繼承自 SelectModel

class IMessageSelectModel extends SelectModel {
            private IMMessage imMessage;

            public IMMessage getImMessage() {
                return
imMessage; } public void setImMessage(IMMessage imMessage) { this.imMessage = imMessage; } }

建立好了model就可以直接使用該dialog了(原始碼都在框架裡自己去尋找吧)
建立dialog 並show

final List<IMessageSelectModel> list = new ArrayList<>();
            prepareDialogItems(item,list);

            //構造例項化選擇彈窗
SelectDialog<IMessageSelectModel> chooseDialog = new SelectDialog.Builder<IMessageSelectModel>(getActivity()) .setDataList(list) .setButtonColor(getResources().getColor(R.color.dileber_text_10)) .setButtonSize(14
) .setLastButtonSize(14) .setTitleText("選單") .build(); chooseDialog.setButtonListener(new BaseNoticeWindow.OnButtonListener<IMessageSelectModel>(){ @Override public void onSureListener(View v, IMessageSelectModel selectModel) { if(selectModel!=null){ if(selectModel.getTitle().equals(getString(R.string.repeat_send_has_blank))){ onResendMessageItem(selectModel.getImMessage()); }else if(selectModel.getTitle().equals(getString(R.string.delete_has_blank))){ deleteItem(selectModel.getImMessage()); }else if(selectModel.getTitle().equals(getString(R.string.copy_has_blank))){ onCopyMessageItem(selectModel.getImMessage()); } } } @Override public void onDiscardListener(View v) { } @Override public void onDismissListener(View v, int nType) { } }); chooseDialog.show(getView());

相關推薦

Android 框架Dileber SelectDialog的使用

框架地址 dileber android框架 希望大家能多多star一下 selectDialog 可以新增多個選擇內容展示效果如下 上圖是用dileber架構的im即時聊天系統,當前的操作為長按出現選擇選單。 選單的使用方法,首先建立一個model

android 框架Dileber 專案實踐

dileber android 框架:乁( ˙Ω˙ )廠 跳轉連結 dileber android框架 怎麼說呢?既然看到了就在github上star一下唄 (´ཀ`」 ∠) 最近我將一個用dileber 專案開發的示例軟體提交到github上: mys

Android進階RxJava2 源碼解析 1

andro 內部 創建 protected 直接 ram 存在 代碼 原理 本文適合使用過Rxjava2或者了解Rxjava2的基本用法的同學閱讀 一.Rxjava是什麽Rxjava在GitHub 主頁上的自我介紹是 "a library for composi

Android 程序架構 MVCMVPMVVMUnidirectionalClean...

不同 概念 可能 十年 tin gettext 聲明 數據 content 摘選自:GUI 應用程序架構的十年變遷:MVC、MVP、MVVM、Unidirectional、Cleanhttps://zhuanlan.zhihu.com/p/26799645 MV

Android 編譯時mmmmmmmmammma的區別

ble builds exec 編譯 end fig 刪除文件 rec ava m:編譯整個安卓系統 makes from the top of the tree mm:編譯當前目錄下的模塊,當前目錄下需要有Android.mk這個makefile文件,否則就

AWS考證方向AWS實例環境部署

更改 無法 環境 情況 密鑰 安全組 部署 如果 17. AWS主機環境部署 1.在控制面板頁面,選擇《啟動實例》: 2.選擇AMI系統映像 3.選擇實例類型(免費為主): 4.檢查實例詳細信息: 5.添加存儲(磁盤20G夠用,不夠後面再加,卷類型:通用性SSD): 6.添

OpenStack Pike Minimal安裝計算服務

systemctl list rbo console meta catalog l數據庫 sys manage Ⅰ、在controller節點上配置nova 1.創建nova服務憑據 #先使用腳本登陸admin [root@controller ~]# . admin-op

Android 訊息機制HandlerMessageQueue 和 Looper

在這篇文章中,我們將會討論 Android 的訊息機制。提到 Handler,有過一些 Android 開發經驗的都應該很清楚它的作用,通常我們使用它來通知主執行緒更新 UI。但是 Handler 需要底層的 MessageQueue 和 Looper 來支援才能運作。這篇文章中,我們將會討論它們三個之間的關

HTML5 Canvas 教程路徑

四、路徑 Paths   4.1路徑 Path   在HTML5畫布上繪製路徑,可以通過連線多個子路徑(曲線)實現。每個子路徑的結束點成為新的路徑的上下文點。我們可以使用lineTo()、arcTo()、quadraticCurveTo()和b

HTTP學習記錄頭資訊(請求和響應)

學習資源主要為:@小坦克HTTP相關部落格 一、請求頭資訊(Request Header) 請求頭資訊包含比較多,如下: 1、Cache頭域   if-modified-Since   作用:把瀏覽器端快取頁面的最後修改時間傳送到伺服器去,伺服器會把這個時間與伺服器上的實際檔案的最後修改時間進行對比

Android SQLite資料庫查,以及資料庫版本管理

建立資料庫版本v.1 /** * 作者:created by meixi * 郵箱:[email protected] * 日期:2018/10/9 11 */ public class DBHelper extends SQLiteOpenHelper

Rest Framework認證元件

一、建立LoginAuth類完成認證過程 urls.py url(r'^login/', views.Login.as_view()), url(r'^books/', views.Books.as_view()), models.py from django.db&

Android 架構設計MVCMVPMVVM和元件化

MVC、MVP和MVVM是常見的三種架構設計模式,當前MVP和MVVM的使用相對比較廣泛,當然MVC也並沒有過時之說。而所謂的元件化就是指將應用根據業務需求劃分成各個模組來進行開發,每個模組又可以編譯成獨立的APP進行開發。理論上講,元件化和前面三種架構設計不是

專案實戰判斷有網沒網 並解析資料新增到資料庫

1.這個比較複雜 程式碼比較多發的這個是其中的一個頁面 我就簡單寫一下思路吧 如果要往資料庫裡面新增的話 先建立一個數據庫 然後在Dao層寫增刪改查方法 下面開始寫頁面展示內容 內容太多我也不多說了 public class Fragment01 extends Fragment {  

經典演算法研究系列教你通透徹底理解BFS和DFS優先搜尋演算法

4、教你通透徹底理解:BFS和DFS優先搜尋演算法 作者:July  二零一一年一月一日 --------------------------------- 本人蔘考:演算法導論 本人宣告:個人原創,轉載請註明出處。 ok,開始。 翻遍網上,關於此類BFS和DFS演算法

細說Android框架設計三劍客MVCMVP和MVVM

    最近幾年的移動端開發越來越火,功能越來越強大,處理業務越來越複雜,因此對系統擴充套件性的要求越來越高。而為了更好地進行移動端架構設計,我們最常用的就是MVC和MVP,今天本篇部落格就和大家一起聊一聊這兩種框架設計。 MVC框架 MVC的定義

Python系列Python函數--技術流ken

說明 else col 格式 ren dash 語法 area 沒有 Python函數 函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。 函數能提高應用的模塊性,和代碼的重復利用率。你已經知道Python提供了許多內建函數,比如print(

阿里Android開發規範BitmapDrawable 與動畫

以下內容摘自 阿里巴巴Android開發手冊 我們的目標是: 防患未然,提升質量意識,降低故障率和維護成本; 標準統一,提升協作效率; 追求卓越的工匠精神,打磨精品程式碼。 【強制】必須遵守,違反本約定或將會引起嚴重的後果; 【推薦】儘量遵守,長期遵守有助

oracle入門很簡單本地Net服務名配置

預設情況下,利用客戶端工具,例如,sqlplus、PL/SQL Developer等連線資料庫時,並不會直接使用資料庫的SID,而是通過本地Net服務名。所謂本地,是指Oracle客戶端。本地Net服務名的配置中包含了要連線的資料庫伺服器的主機名、資料庫的SID、監聽器的

大資料框架對比HadoopStormSamzaSpark和Flink

今天看到一篇講得比較清晰的框架對比,這幾個框架的選擇對於初學分散式運算的人來說確實有點迷茫,相信看完這篇文章之後應該能有所收穫。簡介大資料是收集、整理、處理大容量資料集,並從中獲得見解所需的非傳統戰略和技術的總稱。雖然處理資料所需的計算能力或儲存容量早已超過一臺計算機的上限,