原创 自定義View之Layout過程

一、單一View 二、ViewGroup

原创 自定義View之Measure過程

只做下簡單的 Measure 流程整理 一、測量規格 MeasureSpec 說明 1、結構說明 2、使用說明 /** * MeasureSpec類的具體使用 **/ // 1. 獲取測量模式(Mode) int spec

原创 自定義View之Draw過程

一、單一View 二、ViewGroup 三、優化細節 1、源碼 /** * a. 該標記位的作用是:當一個View不需要繪製內容時,系統進行相應優化 * b. 默認情況下:View 不啓用該標記位(設置爲fals

原创 兩個安卓模擬器進行Socket通信 — TCP方式

問題描述: 在一臺電腦上,進行兩個安卓模擬器的Socket通信時,因爲host都是127.0.0.1,所以連接一直失敗。 解決方法: 1、運行服務端模擬器,端口配置爲8880 2、客戶端模擬器,host配置爲10.0.2.2,端口配置

原创 滑動知識相關整理

一、RecyclerView滑動監聽 recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onS

原创 ConstraintLayout約束佈局——實現左文右圖效果

先來看下想要的效果: 左文右圖,標題最多顯示2行,時間和圖片底部對齊 1、問題說明: 在這個佈局中,左邊的文字和時間是一個整體,右邊的圖片是一個整體,讓圖片只位於文字右側或者時間右側都是不對的。 (1)圖片位於文字右側:當文字較少時

原创 Android 一鍵清除其他app的數據(快捷方便)

如何在自己的app裏面,一鍵清除其他應用的數據??? 看了很多網上的教程,80%都說需要將自己的app打包爲系統應用,我想說這也太麻煩了吧,那幾個aidl文件就得折騰好久,再別說拿到對應手機系統的簽名了。 下面介紹一種簡單快速地做法: 一

原创 仿Win8圖標按下回彈效果

本文參考鴻洋大神的文章 https://blog.csdn.net/lmj623565791/article/details/23441455 效果如圖: 佈局如下: <RelativeLayout xmlns:android="h

原创 android:pathData 屬性

先來說明下,大寫字母表示絕對位置,小寫字母表示相對前一個點的位置 一、直線 (1)只標註點 x、y 分別表示點的橫、縱座標,不做繪製操作 M x, y (2)畫線 L 用來畫某個點到(x, y)的直線 L x, y H 用來畫橫

原创 Instant Run默認啓動的條件

使用調試構建變體構建您的應用。 使用 Android Plugin for Gradle 2.3.0 或更高版本。 在應用的模塊級 build.gradle 文件中將 minSdkVersion 設置爲 15 或更高。 點擊 Run

原创 MotionEvent的幾個值

MotionEvent.ACTION_DOWN:在第一個點被按下時觸發 MotionEvent.ACTION_UP:當屏幕上唯一的點被放開時觸發 MotionEvent.ACTION_POINTER_DOWN:當屏幕上已經有一個點被按住

原创 Bitmap、BitmapFactory、BitmapFactory.Options知識整理

1.Bitmap 1.1非靜態方法 public void recycle()——回收位圖佔用的內存空間,把位圖標記爲Dead public final boolean isRecycled() ——判斷位圖內存是否已釋放

原创 ContentProvider簡單學習

ContentProvider 對應用之間數據訪問起着很重要的作用,比如我們在自己的應用中去獲取聯繫人信息,相冊圖片等 文中主要涉及的知識點 UriMatcher SQLiteOpenHelper ContentProvider Con

原创 Android音頻播放—MediaPlayer

先來看看 MediaPlayer 的生命週期: 這張狀態轉換圖清晰的描述了 MediaPlayer 的各個狀態,也列舉了主要的方法的調用時序,每種方法只能在一些特定的狀態下使用,如果使用時 MediaPlayer 的狀態不正確則會引發

原创 SVG學習--VectorDrawable的使用

作者:r17171709 原文地址:http://www.jianshu.com/p/709994b08683 SVG的全稱是Scalable Vector Graphics,叫可縮放矢量圖形。它和位圖(Bitmap)相對,SVG不會