原创 PhotoView的使用

1.介紹以及引入 PhotoView 是一款擴展自Android ImageView,支持通過單點/多點觸摸來進行圖片縮放的智能控件。 特性: 支持單點/多點觸摸,即時縮放圖片; 支持平滑滾動; 在滑動父控件下能夠運行良好;(

原创 關於EditText的一些小事

EditText的使用場景有很多,例如用戶登錄的時候,輸入信息的時候。所以我覺得有必要寫篇文章記錄一下。 1.inputType:EditText的輸入類型 android:inputType="text" and

原创 Android PictureInPicture(畫中畫功能)

Android 8.0推出了PictureInPicture(畫中畫功能),目前只有在8.0以上的系統上支持。對比IOS,IOS的Picture in Picture 模式是蘋果公司在 iOS 9 中加入的一項多任務功能。下面先看

原创 一步步實現自定義View之流式佈局

首先看一下效果圖吧: 1.實現原理 分爲兩個部分,容器:繼承自ViewGroup的TagViewLayout,單個item:繼承自VIew的TagView。 下面先看一下TagView 1.1 TagView 比較簡單,主要就是繪

原创 一步步實現自定義View之餅狀圖

首先看一下效果圖: 對於這個餅狀圖,我也沒有說一開始就想好要做成什麼樣,只是單純地想做一個。繪製圓弧部分很簡單。但是隻是畫出幾個圓弧肯定是不夠的。於是我就又在外面加了一些文字。文字有了,我又想爲何不在一開始的時候給它加個動畫呢?於是就

原创 一步步實現自定義View之雷達圖

之前在項目中需要用到雷達圖,我就在github上挑了一個用於項目中實現了需求。但是作爲一隻有追求的程序猿,我還是想自己實現一下,忙裏偷閒地實現了一個雷達圖。下面看一下效果圖吧: 接着詳細地介紹一下我的實現思路吧 1.繪製背景圖 首先這裏

原创 Rxjava2源碼學習(二)

上一篇中看了Rxjava的通過鏈式調用來實現數據的傳輸,這一篇接着看加上線程切換之後,整個流程是怎樣的。 還是以下面這個流程爲例: Observable.create(new ObservableOnSubscribe<String>()

原创 一步步實現自定義View之圓形進度條

目前基於Kotlin做了三種圓形進度條,首先看一下這三種進度條的效果圖吧(項目地址戳這裏): 第一個自定義View,我把它取名爲CircleLevelView,效果看着是一段圓弧的動畫顯示進度。第二個取名爲CircleVertica

原创 打造基於MediaSessionCompat的音樂播放(二)

前言 在上一篇文章打造基於MediaSessionCompat的音樂播放(一)中,已經簡單地介紹了MediaSessionCompat框架以及它的具體使用。 今天這篇,主要介紹如何提供數據給播放器。 在這裏我還是以谷歌官方的andr

原创 關於CNUO的一點點

CNUO名字的由來? 因爲自己曾經的QQ名就是C諾,當初的中二少年,思來想去就把這款App叫做CNUO了。 最初的設計圖是通過墨刀設計的,不過寫到現在,成型的模樣也已經和當初設計的有了很大的區別。雖然這是不成熟的表現,但是自己也通過從想

原创 基於MediaSessionCompat的音樂播放器 —— CNUO

陸陸續續終於寫完了這一款屬於我自己的音樂播放器——CNUO音樂播放器。 簡介 這是一款基於MediaSessionCompat打造的本地音樂播放器,主體架構參考了googlesamples的android-UniversalMusicP

原创 Activity界面跳轉出現閃屏問題

使用共享元素,界面切換的時候,出現了閃屏現象,跳轉的時候,可以明顯地看到界面閃白屏,很影響視覺效果。 原本的代碼是這樣的: 在v21-style.xml中,目標Activity的style是這樣的: <style name="AlbumT

原创 錯誤 java.lang.NoSuchMethodError: No static method getFont

java.lang.NoSuchMethodError: No static method getFont at android.support.v7.widget.TintTypedArray.getFont(TintTypedArr

原创 Android Material Design之TextInputLayout

1.TextInputLayout是什麼? 首先看一下Google註釋原文: Layout which wraps an {@link android.widget.EditText} (or descendant) to show a

原创 一步步實現自定義View之播放暫停控件

最近開始深入學習自定義View,通過模仿學習,再配合Kotlin,寫了一些自定義控件,這次介紹的是類似於音樂播放暫停的一個控件 首先看一下效果圖: 下面先分析一下原理: 狀態1是播放狀態,有兩個小矩形,外面是一個圓,它需要最終變換成