Good Habit:習慣養成軟件

一些好的習慣,比如體育鍛煉、技能學習、早睡早起等,需要長期的堅持才能看到效果。但是大家現在的生活、工作節奏都很快,事情很多,稍不注意,一些欲帶養成的習慣,隨着一次兩次的疏忽,逐步發展到完全遺忘,也是常有的事情。


對我自己來講,希望有這樣一款軟件:它可以記錄我一週之內,某些行爲進行了多少次,如果離目標相差很多,能得到某種提示。平時我一直在使用remember the milk,也找了些專門的habit軟件,對我這個需求,都有些不太合適。所以決定花一些業餘時間,自己開發一個。目前已經完成了Android的第一個版本。





這個界面是仿remember the milk的,個人感覺比較清爽,很喜歡。完成次數和目標次數通過進度條顯示,一週之內,越難完成的目標,底色會用越來越深的紅色提示。


軟件規模很小,主界面是個listview,在新增、刪除、過期、完成詳細情況展示的時候,分別會有一個對話框。後期考慮加入桌面widget,通知欄提醒等功能。有興趣的朋友可以找我要apk


開發過程還是比較順利的,之前只接觸過Android遊戲開發,這次應用開發,遇到問題主要是靠搜索Android官網文檔以及技術博客找到解決方案的。


值得一寫的開發細節,我覺得Java語言的內部匿名類及其在Android事件驅動方式上的應用算是一個。

        OnItemLongClickListener listener = new OnItemLongClickListener(){
        	public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id){
        		if(longClickId != id){
        			longClickId = id;
        			removeDialog(CONFIRM_DEL_HABIT_DIALOG);
        		}
        		showDialog(CONFIRM_DEL_HABIT_DIALOG);
        		return true;
        	}
        };
        lv.setOnItemLongClickListener(listener);

最先吸引我的還是這種對我來說略顯怪異的語法。另外老趙的博客中有幾篇匿名類、函數的文章,對比Java和C#,讓人讀後若有所悟。


另外遇到的一個比較棘手的問題,是在使用listview的過程中,經常碰到選中一項無法變色的情況,我總結了兩種原因:

1.item項裏的view,背景色沒有設透明
2.item項上面有控件搶佔了焦點,例如checkbox

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