原创 Android原理知識回顧--TCP/IP 三次握手、四次揮手概念

TCP三次握手的過程如下。 第一次握手:建立連接。客戶端發送連接請求報文段,將 SYN 設置爲 1、Sequence Number(seq)爲 x;接下來客戶端進入SYN_SENT狀態,等待服務端的確認。 第二次握手:服務器收到

原创 含覆蓋模式、色塊拼接組合模式的可漸變、可中間帶文字列表的圓環進度條

使用 implementation 'com.vegen.open:ProgressBar:+' 其中 '+' 請填寫版本號 Download 後的最新版本 歡迎star,GitHub 地址:https://github.c

原创 可挖孔、可圓角、可帶分割線的卡片 ViewGroup

使用 implementation 'com.vegen.open:HoleCardView:+' 其中 '+' 請填寫版本號 Download 後的最新版本 使用示例 佈局 <?xml version="1.0" encod

原创 自定義ViewGroup實戰:一步步實現流式佈局

流式佈局在日常開發應用還是挺需要的,如搜索的記錄一般我們就會做成流式佈局,但是 Android 沒有這樣的佈局,所以很多時候我們需要自定義 ViewGroup 來實現流式佈局。本篇文章講解的是流式佈局的設計思想以及簡單的實現,希望能

原创 Builder設計模式之構建萬能Dialog

一. Builder設計模式 定義 將一個複雜對象的構建與它的表示分離,使得不同的構建過程可以創建不同的顯示,但其根本還是不變。 使用場景 1、相同的方法,不同的執行順序,產生不同的事件結果時; 2、多個部件或零件,都可

原创 Android 權限整理

權限彙總 android.permission.EXPAND_STATUS_BAR  允許一個程序擴展收縮在狀態欄,android開發網提示應該是一個類似Windows Mobile中的托盤程序 android.permission

原创 動畫實戰:打造仿搜索引擎加載動畫

前言 在上一篇 動畫實戰:打造炫酷的加載動畫 中,我們利用屬性動畫打造了較爲炫酷的加載動畫,本篇文章還是以屬性動畫爲利器,結合自定義 View/ViewGroup 打造仿某搜索引擎搜索中的動畫效果。 1.效果分析 1.1 效果圖

原创 Material Design系列--CollapsingToolbarLayout使用總結

前言 大三就要結束了,馬上快要找實習了,這三年來,自己跌跌撞撞,走了很多彎路,很幸運遇到我的良師、伯樂–曾哥,一直鼓勵我,引導我。在學校裏,學到了很多,有過成功有過失敗,有過迷茫也有過氣餒,但是一步步走過來,發現自己還是個上進

原创 自定義View實戰四:圓形進度條

本文介紹自定義圓形進度條的實現,主要利用自定義 View 和動畫相關知識。 下面是效果圖 實現步驟分析 準備好外層圓、內層圓、中間文字的畫筆 測量 繪製 提供相關方法 準備好外層圓、內層圓、中間文字的畫筆 public

原创 自定義View實戰一:打造仿系統TextView

自定義 View 是較爲重要的一個技能,Android 的日常開發離不開自定義 View,下面以仿系統 TextView 進行對自定義 View 的學習與分析,本例只是初步實現 TextView 的基本功能,對於完整的 TextVi

原创 自定義View實戰二:計步器的實現

一、概述 本文詳細結合自定義 View 和 屬性動畫,講述如何自定義一個圓弧計步器。 二、實現步驟分析 確定自定義屬性,編寫attrs.xml 在自定義View中獲取自定義屬性,做好初始化工作 onMeasure(int

原创 Android 自己打造IOC註解框架

Android中IOC框架就是注入控件和佈局或者說是設置點擊監聽,網上有很多成熟的註解框架例如xUtils,afinal,butterknife等等。你可能會問,既然已經有好的框架爲何還要造輪子?因爲,首先我是學習,學習框架的設計以及

原创 EventBus 源碼分析

本篇文章是EventBus的源碼分析,以瞭解其實現的精髓`。EventBus是針對Android優化的發佈-訂閱事件總線,簡化了Android組件間的通信。Github地址:EventBus 一、註冊 register 源碼分析

原创 動畫實戰:打造炫酷的加載動畫

前言 很多時候,我們的頁面需要網絡請求完畢再根據數據加載 UI,而在此過程中,用戶等待時,一般會有一個加載中的提示。本文結合自定義 View/ViewGroup 以及屬性動畫相關知識,講述較爲炫酷的動畫效果的 LoadingView

原创 自定義ViewGroup實戰:結合ViewDragHelper實現列表拖拽

前言 ViewDragHelper 是一個用於編寫自定義 ViewGroup 的工具類,它提供了許多有用的操作和狀態跟蹤,允許用戶在其父 ViewGroup 中拖動和重新定位視圖。 本文是結合 ViewDragHelper 和自定