原创 Kotlin之通過接口返回JSON動態佈局界面

引言 在寫第一篇Kotlin文章的時候就已經打算做個項目好好的練練,於是選用了開眼app作爲練手項目全程使用Kotlin。 在上一篇文章中已經獲取到了頁面數據,由於其頁面通過JSON動態佈局(個人觀點),因此需要:熟練的JSON解析能力

原创 拒絕API player 標籤

兩次面試 又到了金三銀四的離職季節,我也修飾了下簡歷並update,有針對性的投了有興趣的幾家。(投簡歷切勿盲目,大的職業規劃拋開不說,最少也要有目的性)一般求簡歷的,我也會看下公司信息,合適的我也會給,說不準緣分就在那一刻。 大多數的

原创 與ViewPager完美結合的順滑引導條系列之三

引言 在前兩篇文章中,已經基本實現了ViewPager與引導條的聯動滑動。思路是通過ViewPager.OnPageChangeListener的回調,得出滑動方向和滑動距離。根據光標和索引的位置,決定將要滑動的是光標還是索引,然後進行

原创 白話時間複雜度與空間複雜度

時間複雜度 用於表示,算法解決規模爲n的問題所消耗的時間。 理解:用同一代碼塊段執行的次數衡量 sum = n*(n+1)/2; //順序執行時,此代碼塊只會運行一次因此時間複雜度爲 O(1) for(int i = 0; i < n;

原创 與ViewPager完美結合的順滑引導條系列之一

引言 在與ViewPager完美結合的順滑引導條系列之需求分析這篇文章裏已經瞭解了基本的需求,分析了一些交互行爲。佈局方面,我首先想到的是用RecyclerView完成索引,目的是讓索引項可以複用減少內存開銷,然後畫一個View做光標。

原创 二叉樹的操作

二叉樹是樹結構中的一種,有且最多隻有兩個子節點。這裏將列舉一些常見的操作及我的解法,具體介紹及題目在這LeetCode。 遍歷 1.前序遍歷 2.中序遍歷 3.後序遍歷 4.層序遍歷 遞歸問題 1.樹的深度 2.鏡像樹 3

原创 Kotlin之下拉刷新與上拉加載控件優化

引言 繼Kotlin之下拉刷新與上拉加載控件之後,總感覺使用起來體驗不是很好且沒有增加footerView,這次統一在這裏優化。 優化的方面有:增加滑動阻尼、增加footerView等 正文 FooterView 之前由於Linea

原创 內存優化策略

引言 首頁功能完成後在使用的時候偶爾會崩潰,log一看oom了。 仔細想想現在的佈局結構確實會出現這樣的問題 只首頁這一個Fragment內的ViewPager就包含了21個子Fragment 其中每個子Fragment又包含了多個vi

原创 Kotlin之利用RecyclerView優化佈局

引言 上一篇中已經將JSON數據轉化爲佈局 可以發現: 1、單擊按鈕很長一段時間後界面才顯示出來 2、且左上角的數字顯示根ViewGroup內有81個子View 3、單這一個界面全部加載完成總共消耗了125M內存(Android

原创 Kotlin之下拉刷新與上拉加載控件

引言 自從RecyclerView出現後ListView便漸漸退出了舞臺的中央,所有ListView能夠做到的RecyclerView都會做的更加優秀。今天就來講講 RecyclerView比ListView遜色的地方。 用過兩者的人

原创 Kotlin之Glide的自定義BitmapTransformation

引言 上一篇中利用RecyclerView已經實現了將控件複用以達到減少性能和內存消耗的目的,這一篇中將進一步優化界面的顯示。 我項目中採用的圖片加載框架是Glide,優點什麼的網上很多人都在討論,這裏說一下我爲什麼選用Glide而不是