原创 ListView學習(一)-ListView使用

 ListView是android最常用的控件之一,可以實現各種列表:例如通訊錄,聊天列表,好友列表等等。這裏學習一下如何使用android的ListView 1. 實現一個簡單的列表      ListView使用需要與Adapt

原创 解決Error inflating class android.support.v7.widget.RecyclerView

使用RecyclerView的時候出現 Error inflating class android.support.v7.widget.RecyclerView錯誤 一般是因爲RecyclerView的v7包與其v4或v13包版本不同導致

原创 Android中使用OrmLite(二):複雜條件查詢

在數據庫中經常會使用到複雜的條件查詢,來完成業務,下面學習下如何使用OrmLite進行復雜條件查詢。 在默認情況下,Android只打印info級別的日誌信息。在ormlite中提供了AndroidLog類來設置adb log的級別。

原创 Android中使用OrmLite(一):表創建及增刪改查

OrmLite是一個輕量級的ORM框架,面向JAVA語言。也是時下流行的Android的ORM框架之一。在Android中使用Sqlite數據,如果又不想寫SQL,OrmLite或許是個不錯的選擇。 使用OrmLite,首先要在gr

原创 使用Android Studio調試Android Framework代碼

閱讀源碼很枯燥,如果能單步調試豈不是能使邏輯更清晰,本文章講如何調適android framework。本文使用的環境是ubuntu 14.04,jdk1.6。Android4.4.2源碼(有興趣可以去下載更新版本的代碼,其他版本

原创 Android中使用OrmLite(三):批處理

OrmLite提供了批處理的方法 mDao.callBatchTasks(new Callable<Object>() { @Override public Object call() throws Exception

原创 Android的消息機制學習(一)Looper,Handler,MessageQueue

Message,Handler是在Android中最常用的,更新UI點手段。與其他圖形界面的原理類似,Android系統中UI也是靠消息驅動來工作的,具體有以下一些概念。 消息發送者:發生消息到隊列 消息隊列:存儲消息的隊列 消息循環:不

原创 ListView學習(二)-ListView緩存機制

打開ListView源碼查看ListView的繼承結構,發現ListView是繼承自AbsListView ListView作爲列表,可以顯示成百上千個item。如果有多少數據,就創建多少個item,會佔用很大內存,但是大

原创 一種TV(Android系統)通用焦點框的實現

在電視的交互設計中,通常需要一個焦點框來指示當前選中了哪個控件,如果每個控件都通過給background設置selector的方式,實現焦點框效果,需要寫很多xml文件。 所以這裏偷懶實現一個通用的焦點框,實現自動跟隨焦點變化,實現焦點框

原创 徹底解決錯誤Duplicate files copied in APK xxx/xxx/xxx/LICENSE.txt

問題 在安卓gradle打包過程中 主工程與子工程在各自的libs目錄下放了相同的jar包。 使用Android Studio調試的時候會報錯 Duplicate files copied in APK xxx/xxx/xxx/LICEN

原创 Hello World,使用OpenGL ES繪製一個三角形

1.Android中創建OpenGL ES環境 爲了使用OpenGL畫圖,我們首先需要創建OpenGL環境。 a.第一步當然要在Manifest中聲明一些東西 首先要聲明下使用的OpenGL ES版本,由於OpenGL ES 2.0支持A

原创 Android面試題目總結

最近剛換了工作,在這裏把各互聯網公司問到的題目做下總結。涉及的內容都是Android研發應該掌握的基礎問題,我把題目大概分爲JAVA,設計模式,Android,網絡,算法五類。最後邊列一下自己看過的技術書籍,希望大家都能提高自己,找到心儀

原创 SimpleArrayMap源碼分析

說到SimpleArrayMap首先要說一下HashMap,HashMap是用數組與鏈表(JAVA8樹),hash算法構造的一個key,value結構。 HashMap在存取的時候有O(1)的時間複雜度。同時也有以下缺點。 1.每個對

原创 字符串搜索算法(二)Sunday算法

Sunday算法是Daniel M.Sunday於1990年提出的一種非常高效的字符串搜索算法。其與其他搜索算法核心思想一樣,都是跳過儘可能多的字符。但是Sunday算法更容易理解,算法更簡單。 Sunday算法的跳躍規則是,在匹配失敗時

原创 Android中使用AbstractProcessor在編譯時生成代碼

1.概述 在現階段的Android開發中,註解越來越流行起來,比如ButterKnife,Retrofit,Dragger,EventBus等等都選擇使用註解來配置。按照處理時期,註解又分爲兩種類型,一種是運行時註解,另一種是編譯時註解,