原创 RxJava2深度學習(三)

這一篇主要學習一下zip操作符。 先了解一下zip操作符是什麼,能做什麼: Zip通過一個函數將多個Observable發送的事件結合到一起,然後發送這些組合到一起的事件。它按照嚴格的順序應用這個函數。它只發射與發射數據項最少

原创 製作屬於你自己的Library

平時在項目中build.gradle中一直用的都是別人的第三方Library,那麼如何快速打造屬於自己的Library呢?當我們在項目中使用了自己的Library時,感覺應該會很不一樣吧! 接下來就介紹一下怎麼打造屬於自己的Li

原创 RxJava2深度學習(一)

雖然一直都有在用RxJava2,但是很慚愧的是,一直都只是在和Retrofit配合使用的時候用了一下,總感覺自己確實還不怎麼理解RxJava2。看着RxJava中各種各樣的操作符,有點力不從心的感覺。可恥地連代碼都看不懂的話,實在

原创 我的Kotlin學習之旅(七)

1.泛型: Kotlin中也有泛型,和Java類似 例如: class Person <T>(name: T){ var personName = name } 這個類的主構造函數,初始化時需要指定泛型, 下面是測

原创 adb server version not match client

已經出現過幾次了,出現這種情況的問題一般是adb 端口被佔用了。通常情況下是因爲某種手機助手打開了,佔用了端口號 。 目前發現過兩種手機助手: 1. 360手機助手: 我明明沒有去開過這個助手,它自己就打開了,只要把它卸載

原创 RxJava2深度學習(二)

上一篇學完了Observable和Observer,這一篇學一下map操作符和flatMap操作符 1.先看一下map操作符: map是RxJava中最簡單的一個變換操作符了,map操作符的作用是將上游(Observable)發

原创 Android ijkplayer的初體驗

ijkplayer是b站開源的的視頻播放器。想要使用它的原因是之前在github上看到bilibili開源的彈幕框架,下載體驗了一下,感覺很有趣,想着結合兩者使用一下。下面先看一下怎麼使用ijkplayer吧! 1.引入: dep

原创 關於android:descendantFocusability

最近修改一個功能,EditText一開始默認不獲焦點,等點擊Edittext的時候,再獲得焦點並彈軟鍵盤。 按照常規操作, 一開始在代碼中設置Edittext沒有焦點: tv_subject.clearFocus(); 當它需

原创 Android 系統撥號界面實現自定義懸浮佈局

首先看一下效果圖: 1.首先提示是否需要開始個性化撥號界面 2.如果需要,跳轉進入設置界面: 3.進入撥打電話界面: 中間的就是自定義顯示出來的界面 實現過程: 1.佈局: <?xml version="1.0" enc

原创 Android 自定義ViewPager酷炫切換動畫

首先看一下ViewPager自帶的滑動效果: 那麼如何打造屬於自己的切換效果呢? 當viewpager上一個可見或依附的頁面發生了滾動事件就會調用PageTransformer,這讓應用可以使用自定義transformatio

原创 Android MVVM框架

一首涼涼送給自己,心累。 首先借鑑一下別人寫的關於MVP的優缺點。。。 一、MVP模式優缺點 在說MVVM之前,簡單回顧一下MVP分層,MVP總共分成三層: a 、View: 視圖層,對應xml文件與Activity/Fragm

原创 導入別人的Android Studio項目

導入別人的AS項目時,往往由於個人的配置不同,導入項目可能會變得很慢,這時候可以通過刪除和修改一些文件,來實現快速導入項目。首先看一下下面的圖: 這是一個從github上down下來的的項目,一般地,我們需要刪除圈住的.idea

原创 自定義RefreshLayoutView與嵌套的RecyclerView的滑動衝突

1.問題描述: 首先看一下: 2代表的是RecyclerView,1代表的是其他的佈局。 問題場景是這樣的: 外層是一個自定義的可下拉刷新的控件,它的內部嵌套一個RecyclerView(Recycleview上方還有一

原创 EventBus 3.0 體驗

EventBus是用於Android和Java的發佈/訂閱事件總線 原理:發佈者發佈事件,訂閱者通過EventBus接收事件,做出相應的響應。 EventBus的優點有: 1.簡化組件間的通信 2.使代碼更加簡潔 3.具有

原创 系統通話界面 自定義來電顯示

上一篇文章寫了使用WindowManager實現從自己的app界面撥打電話調用系統通話展示自定義佈局。這一篇文章主要介紹一下使用BroadcastReceiver、Service配合WindowManager實現當有電話打進來時,