原创 弱引用WeakReference
WeakReference<Toast> mToast = null; Toast toast; toast = Toast.makeText(mActivity, R.string.empty, Toast.LENGTH_SHORT)
原创 設計模式學習筆記(五):建造者模式【Builder Pattern】(二)問題改進
接着上面所提出的問題,增加一個CarBuilder的抽象類,以及兩個實現類,其目的是你要什麼排列順序的車,我就給你什麼順序的車。先看下CarBuilder.java抽象類的程序: package com.example; imp
原创 android.graphics.drawable.shapes
Class ArcShape Creates an arc shape. :弧形 OvalShape Defines an oval shape. :橢圓形 PathShape Creates geometric paths,
原创 Android讀取內存,T卡大小
要獲取文件系統的信息,必須瞭解Environment類與StatFs類。 1. android.os.Environment類主要是一個提供訪問環境變量的類。 主要方法如下: 方法 解釋 1 getDataDirect
原创 設計模式學習筆記(五):建造者模式【Builder Pattern】(一)問題提出
在設計模式學習筆記(三):模板方法模式中的汽車模型基礎上又提出了新的需求:汽車的啓動/停止/喇叭聲音和引擎聲音都由客戶自己控制。 那麼我們定義一個CarModel的抽象類,其中方法 run 和 setSequence 是抽
原创 簡單的Camera例子(Building a Camera App)
本文主要參考的是Android文檔裏的Camera講解。 如果想建立一個簡單的Camera應用程序應該遵循以下的步驟: 檢查和訪問Camera - 檢查是否存在支持的硬件和請求訪問相機。 建立一個預覽的類Class
原创 更改預覽爲全屏時照片大小顯示爲空的問題
一 、Android4.4原生的Camera 首先看初始化的過程,代碼如下: if (pictureSize != null && pictureRatio != null) { ///
原创 Android自帶ApiDemo裏的動畫分析-AnimationCloning
此例子代碼是Android API裏面帶的一個動畫的例子,主要代碼如下: private void createAnimation() { if (animation == null) {
原创 原生Camera設置的分析(三):自定義控件ListPreference分析
分析自定義控件ListPreference前,首先來看下ListPreference所用到的一些自定義的屬性。關於自定義屬性在之前有所提到:Camera學習筆記(一):camera_preferences.xml分析
原创 LinearGradient線性渲染
學習自:http://blog.csdn.net/q445697127/article/details/7865504 package com.example.demo; import android.content.Context;
原创 SweepGradient梯度渲染 旋轉
此代碼主要是學習APIDemo的代碼: package com.example.demo; import android.os.Bundle; import android.view.View; import android.
原创 Android設備傳感器相關
轉載自:http://www.open-open.com/lib/view/open1366172800984.html 下面是Android 定義的代表sensor的幾個常量: int TYPE_ACCELEROMETER A
原创 原生Camera設置的分析(二):分辨率的過濾
分辨率的過濾問題總體思路分爲三步, 1、首先要讀取底層所支持的所有分辨率,與上層支持的分辨率比較; 2、然後過濾當前尺寸比例的分辨率; 3、最後與上層已經過濾一次的分辨率再比較(我覺得第三步是不是多餘的???)。
原创 設計模式學習筆記(五):建造者模式【Builder Pattern】(三)問題引申
接着上面的分析。假如有這麼個需求,這四個過程(start ,stop ,alarm ,engineBoom)按照排列組合有很多種,那我們怎麼滿足這種需求呢?也就是要有個類來安排這幾種方法組合,就像導演安排演員一樣,哪個先出場哪個後
原创 View的drawableStateChanged()方法
Android 的View源碼中有下面代碼: /** * This function is called whenever the state of the view changes in such * a