原创 六大設計原則--開閉原則

定義 software entities like classes, modules and functions should be open for extension but closed for

原创 Android 手機影音 開發過程記錄(三)

前一篇已經將MainActivity編寫好了,其中主頁面的ViewPager控件嵌入的是兩個fragment,分別是VideoListFragment 和 AudioListFragment。今天主要理一下視頻這一模塊,包括:

原创 Android 手機影音 開發過程記錄(五)

前一篇已經將視頻模塊弄好了,今天主要理一下音樂這一模塊,包括: 通過ContentProvider獲取音樂列表數據 音樂播放界面的動畫和佈局 音樂播放的界面AudioPlayerActivity和AudioPlayService

原创 六大設計原則--里氏替換原則【Liskov Substitution Principle】

聲明:本文內容是從網絡書籍整理而來,並非原創。 定義 最正宗的定義: If for each object o1 of type S there is an object o2 of type T such that for

原创 Android 下拉選擇

效果圖 思考 要實現以上效果,首先控件是:一個EditText,一個下拉的箭頭ImageView,一個listview,還有讓listview懸浮在文本框下方的PopupWindow 當listview數據被刪除時,需要去判斷

原创 六大設計原則——單一職責原則【Single Responsibility Principle】

聲明:本文內容是從網絡書籍整理而來,並非原創。 用戶管理的例子 先看一張用戶管理的類圖: 再看一眼上面的圖,思考:這樣合理嗎? 這個接口是一個很糟糕的設計! 用戶的屬性和行爲竟然混合在一起!!! 正確的做法是把用戶的信息抽取

原创 Android 開發規範

開發規範,對於初學者可能不會太在意,但真正項目中,規範尤爲重要。一個好的開發規範,可以說是一種藝術,不僅僅有利於後期維護,對代碼的可讀性,美觀性都有影響。下面整理了android項目開發相關的規範。個人知識有限,還望大家補充。 命

原创 Android 自定義ListView 實現下拉刷新 上拉加載功能

效果圖 思考 Listview是viewGroup的子類,它本身提供了方法addHeaderView(View view),addFooterView(View view)去添加頭佈局和底佈局,所以我們只要監聽它的onTouc

原创 六大設計原則--迪米特法則【Low Of Demeter】

聲明:本文內容是從網絡書籍整理而來,並非原創。 定義 迪米特法則也叫做最少知識原則(Least Knowledge Principle),指一個對象應該對其他對象有最少的瞭解,通俗的講:一個類對自己需要耦合或者調用的類應該知道的

原创 Android greenDao開源數據庫框架

之前,android的數據庫部分,自己一直傻傻地按照最原始的方式:寫一個類比如MyDbHelper去繼承SQLiteOpenHelper,然後建庫,建表,建字段,然後再創建一個類MyDbDao去實現操作數據庫的增刪改查的方法。 直

原创 六大設計原則--接口隔離原則【 Interface Segregation Principle】

聲明:本文內容是從網絡書籍整理而來,並非原創。 定義 第一種定義: Clients should not be forced to depend upon interfaces that they don’t use.

原创 Android 屏幕適配

android屏幕適配的整體思路 開發前,選取一款主流屏幕進行開發,比如現在的1280*720; 開發過程中,遵循一些原則:不用AbsoluteLayout(絕對佈局), 多用相對佈局&線性佈局(權重), 要用dp,不用px

原创 Android 手機影音 開發過程記錄(二)

前一篇已經將SplashActivity編寫好了,這篇主要梳理一下主頁面MainActivity。包括: 實現ViewPager上方的頭佈局Tab的高亮和縮放動畫; 實現指示線的隨手指移動而移動的效果 基類的編寫 一般項目開

原创 Android 手機影音 開發過程記錄(一)

開發工具 Android Studio JDK 1.8 版本兼容 Android 4.1及以上 效果圖 主要有視頻和音樂功能模塊: 視頻模塊: 視頻列表-將手機sd卡的視頻列出來 自定義播放器界面 萬能播放器

原创 Android 手機影音 開發過程記錄(六)

前一篇已經將音樂播放及切換的相關邏輯弄好了,今天主要理一下剩餘的部分,包括: 1. 自定義通知欄的佈局及邏輯處理 2. 滾動歌詞的繪製 3. 歌詞解析 效果圖 通知欄 自定義佈局: <?xml version="1.0