1. 程式人生 > >Android基礎——快速開發之定制BaseTemplate

Android基礎——快速開發之定制BaseTemplate

temp .net fonts The 成了 抽取 一份 應該 我們

初學者肯定會遇到一個日常任務,那麽就是findViewById,setOnClickListener(暫且把它們稱為日常任務),而且很多人會把他們混在一起,導致項目結構混亂,最主要的是寫多了會煩,不覺得嗎?當項目的Activity越多時,每次添加控件都要重新寫一次,想想都累

  • 定制解決的問題:盡量寫少的代碼,做更多事
  • 定制的目的:理清代碼結構,讓你編程更有邏輯性
  • 定制的內容:一切都是根據項目的需求去實現

我們就針對日常任務簡單的定制一份我們的BaseActivity

代碼其實很簡單,光從代碼可能不知道這段代碼的意思,那麽就從實現這段代碼來理解它的真正作用,下面是實現BaseActivity的代碼

是不是覺得代碼結構很清晰,而且比起之前的日常任務來說,代碼確實少了不少,各個方法都放著自己應該做的事情,這樣能保證你在編程的時候邏輯不會出錯,讓別人讀起來也很輕松,當然,除了常用的setOnClickListener還有setOnItemClickListener,這就需要根據項目需要而定制

如果你是很酷很有性格的人,那麽也可以嘗試下面這種用法,用一個字母作為方法,一切定制因你心情而定

介紹完了Activity,那麽Fragment就很簡單了,可以模仿Activity實現,如果和上面的一模一樣那麽就沒有樂趣了,這裏由於個人項目原因,我把Fragment默認設置成了懶加載模式,並且只加載一次數據

這裏和Activity最大的區別

  1. convertView:由於Fragment的findID需要convertView,我們只好抽取出來
  2. setUserVisibleHint:這個方法當切換Fragment時會調用,會返回當前Fragment是否用戶可見

這裏采用的是ViewPager+Fragment,如果需要讓Fragment進行緩存,那麽必須對ViewPager進行緩存設置

下面是設置了緩存的懶加載模式的效果圖,可以看到第一次切換需要加載數據,雅思聽力而第二次切回去則界面不會變化,效果和手機淘寶一樣

技術分享圖片

定制BaseApplication那就簡單了,在Application中經常用到的就是第三方的設置、數據庫的加載,具體可以根據項目需求進行定制

學習完之後,建議大家將BaseTemplate用到你們的項目中,當然從中也要學習抽象方法,抽取常用的方法,比如:在加載數據的時候可以抽取BaseController,在Adapter中可以抽取通用的BaseAdapter,具體還需要大家去研究

Android基礎——快速開發之定制BaseTemplate