原创 Flutter 自定義Widget——風車實現

最近在做一個天氣模塊的時候,風力需要顯示一個旋轉的風車,實現效果如下: 需求分析 我們可以把上面的效果拆分爲兩個部分實現: 1、畫一個風車的FanWidget 2、旋轉動畫 一、風車Widget實現 風車Widget 效果如下:

原创 ContentProvider使用

作爲四大組件之一,ContentProvider 算是我直接使用次數最少的一個了。主要提供應用程序之間共享數據的接口 一、創建ContentProvider 實例 ContentProvider是一個抽象類。創建MyProvide

原创 Flutter RxBus實現

剛剛使用RxDart簡單實現了EvnetBus效果, github地址:flutter_rxbus 在pubspec.yaml引入 dependencies: flutter_rxbus: ^0.0.1 用法一: 1、註冊

原创 適配器模式

定義: 適配器模式是將一個類的接口變換成客戶端所期待的另一種接口,從而使原本因爲接口不匹配而無法在一起工作的兩個類能夠在一起工作。 適配器在生活中還是很常見的,下面就是一個其中一種:電源適配器,目的是將220V電壓輸出成12V

原创 ListView源碼閱讀

listview的源碼在此之前看過也不止一次了,但是現在想想好像也就停留在看過的樣子,除此之外就沒啥印象了。 想想之前就是在瞎看,畢竟ListView加上AbsListview有一萬多行代碼了,瞎看的話確實啥都看不出來啥的。所以這

原创 Android系統啓動筆記

一、init進程啓動 init進程是Linux系統中用戶空間的第一個進程,進程號固定爲1。 主要職責: 創建共享內存空間,用於屬性服務 解析各個rc文件,並啓動相應的屬性服務進程,包括Zygote服務進程 二、Zygote進程

原创 EventBus與反射

我發現看一段代碼,可能當時看的會有點模糊,但過一段時間回來再看的時候會忽然有一種:噢,原來是這麼回事的感覺。今天看EventBus源碼的時候也有這種感覺。 基本用法 1、註冊 EventBus.getDefault().re

原创 Android知識點總結

Android四大組件 Activity、BroadcastReceiver、ContentProvider、Service 四大組件生命週期方法和簡單用法 Activity生命週期方法: onCreate()、onSta

原创 Android應用進程啓動筆記

Android系統啓動後,想要啓動一個應用程序,首先需要創建並啓動該應用所需的應用程序進程。 AMS在啓動應用程序時會檢查這個應用程序所需的進程是否存在,不存在就會請求Zygote進程啓動相應的進程。 我們知道,Zygote在Ja

原创 Flutter 在initState()方法中頁面跳轉異常

情景描述: 1、需要在initState()中做一些判斷,然後需要在initState()跳轉頁面 2、在initState()中加載數據,顯示加載彈框。 之前遇到過第一種情況,可能需要在initState()中做頁面跳轉,後

原创 Java集合 -- ArrayList源碼閱讀

定義 一種可以動態增長和縮減的索引序列 ArrayList 數據結構 private static final long serialVersionUID = 8683452581122892189L; //默

原创 Java集合 -- LinkedList源碼閱讀

定義 LinkedList:一中可以在任何位置進行高效地插入和刪除操作的有序序列。 LinkedList 數據結構 LinkedList 結構如下: transient int size = 0; //list大小

原创 OkHttp源碼淺析

OkHttp也用了幾年了,但其實也一直停留在會用的層面上,今天就來簡單看看OkHttp裏面又是怎樣工作的吧。 基本使用 我一般閱讀源碼的入口都是從一些基本方法開始的,這樣不會迷失在源碼裏,就算迷失了,也可以跟着用法在回來。 1、創

原创 責任鏈模式

定義: 讓多個對象都有可能接收請求,將這些對象連接成一條鏈,並且沿着這條鏈傳遞請求,直到有對象處理它爲止。 例子 讓我們通過一個請假回家生孩子的例子來實現一個簡單的責任鏈模式吧。 這裏我們需要部門主管,人事部,和總經理來審批請

原创 Flutter: There are multiple heroes that share the same tag within a subtree異常

今天寫Demo的時候遇到了下面的錯誤: I/flutter: ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════