原创 Android Handler筆記

Android Handler筆記 Handler持有Looper和MessageQueue的引用. Looper創建消息隊列, 在隊列中循環取消息. 持有MessageQueue和Thread的引用. MessageQueue

原创 2015第六屆藍橋杯Java軟件開發本科B組部分題目和代碼

前兩天做的藍橋杯省賽題 第二題: 立方變自身 觀察下面的現象,某個數字的立方,按位累加仍然等於自身。 1^3 = 1  8^3  = 512    5+1+2=8 17^3 = 4913   4+9+1+3=17 ... 請你計算包括

原创 Android BLE藍牙通信

爲了在app中使用藍牙功能,必須聲明藍牙權限BLUETOOTH。利用這個權限去執行藍牙通信,例如請求連接、接受連接、和傳輸數據。如果想讓你的app啓動設備發現或操縱藍牙設置,必須聲明BLUETOOTH_ADMIN權限。 在And

原创 Android網絡圖片加載內存溢出(OOM)解決方案

最近在做的項目在加載大量網絡圖片時遇到了OOM,在網上找了一些資料和請教公司高級工程師,對代碼進行了優化。將大量圖片直接加載到內存中,是造成OOM的主要原因。 解決方法: 添加本地緩存,不直接從網絡加載圖片到內存。將圖片緩存到

原创 UML類圖虛線箭頭

依賴關係:假設A類的變化引起了B類的變化,則稱B依賴於A。表現在代碼上依賴關係一般有如下三種情況: A類是B類中(某個方法)的局部變量。 A類是B類中某個方法的參數。 A類向B類發送消息,從而影響B類變化。 UML圖中,用帶箭

原创 Android倒數計時器CountDownTimer

在實現倒計時功能時,可以使用Android官方倒數計時器,CountDownTimer類 不斷改變Button顯示的數值: private Button bt_get_verification; private CountDown

原创 Android values-sw400dp 屏幕適配

最近在開發中遇到屏幕適配的問題:都是使用dp爲單位,出來的效果卻不一樣。 對比手機: 兩個手機屏幕尺寸相同,都是5.7英寸,同樣畫100dp的線,在屏幕上的長度卻不一樣,Note5上顯示的要短一些。 原因爲兩個手機最小寬

原创 Java強制類型轉換

在Java中由於繼承和向上轉型,子類可以非常自然地轉換成父類,但是父類轉換成子類則需要強制轉換。因爲子類擁有比父類更多的屬性、更強的功能,所以父類轉換爲子類需要強制。 Object x = new Integer(0); Numb

原创 設計模式:原型模式

設計模式:原型模式 定義 原型模式的定義:Specify the kinds of objects to create using a prototypical instance,and create new objects by co

原创 Android View事件分發

在騰訊的面試中被問到父View、子View的點擊事件流程,這幾天好好學習了一遍。主要參考張鴻洋和郭霖的博客。 在觸發OnTouch事件的時候Android的GroupView會調用如下三個函數: public boolean dispa

原创 Eclipse閃退/打不開/無法啓動/一閃而過

很長時間了,寫java、寫android都是用的Eclipse。可是突然有一天,當我像往常一樣試圖打開Eclipse時,Eclipse一飄而過。閃退!!震驚之後我發現自己蛋疼了。 搜索各種博客各種空間,發現很多別人能夠解決問題的答案對我卻

原创 設計模式:抽象工廠模式

設計模式:抽象工廠模式 定義 抽象工廠模式標準定義:Provide an interface for creating families of related or dependent objects without specifyin

原创 Android 應用間共享文件(FileProvider)

在 Android 7.0 中調用系統相機拍照,通過SD卡獲取原圖,拋出FileUriExposedException異常 從 Android 7.0 開始,應用間共享文件時,如果使用 file://格式的 Uri,就會拋出 File

原创 設計模式:建造者模式

定義 建造者模式(Builder Pattern):將一個複雜對象的構建與它的表示分離,使得同樣的構建過程可以創建不同的表示。 類圖 建造者模式包含如下角色: Builder:抽象建造者 ConcreteBuilder:具體建造者

原创 設計模式:工廠方法模式

設計模式:工廠方法模式 最近在學習設計模式,記錄下自己的理解。 定義 工廠方法模式標準定義:Define an interface for creating an object,but let subclasses decide whi