接入slidingmenu的應用之短信羣發功能的實現

今天需要實現的是在建立好的listview中通過checkbox獲取到選中狀態,並在actionbar中的optionmenu里加入一個短信圖標,向選中的對象發送短信,點擊後會彈出一個文字輸入窗口,輸入完成後點擊OK發送。

因爲是在slidingmenu的項目環境下寫的程序,我在gridfragment類中獲取到選中狀態,但因爲短信功能在上層activity的actionbar中,需要在點擊事件發生後獲取到選中的數據狀態。

網上有關傳遞數據的資料基本都是用intent的方式進行主動傳遞,跟我的需求不同,最後因爲是小項目不用考慮太多。我選用了比較簡單的靜態對象方式,以全局的方式進行傳遞和修改。

彈出短信窗口的方式我在網上找了一段代碼,比較好實現。

短信發送的時候調用接口,獲取到文字信息和號碼的字符串,就可以發送了。需要注意的是要在配置文件中取得權限。

然後我想增加一個全選的功能,這樣比較方便羣發短信,這時候問題來了,我不能在optionmenu中添加帶有selector的item,不能理想的顯示出像按鈕一樣的圖片改變。

在這個問題上研究了好久,最後發現actionbar其實是非常自由的東西,可以通過actionlayout來自由的添加內容,直接添加一個帶有checkbox的layout ,就可以正常顯示了。

但這個時候,還沒有實現checkbox單選框的全選功能。因爲獲取不到控件,最後我採用了先獲取到menuitem,然後再通過setactionview方法,設置好目標的layout,再通過getAcitionView獲取到該view,最後獲取到其中的checkbox。

刷新場景和修改標誌數組通過靜態函數實現。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章