原创 Android控件架構與自定義控件詳解(四)——事件攔截機制分析

爲了能夠方便地瞭解事件攔截機制的整個流程,設計這樣一個實例: MyViewGroupA——最外層的ViewGroup MyViewGroupB——中間的ViewGroup MyView——最底層的View 效果圖如下: 代碼

原创 Android Scroll分析(二)——實現滑動的五種方法

實現滑動的思想基本是一致的,當觸摸View時,系統記下當前觸摸點座標;當手指移動時,系統記下移動後的觸摸點座標,從而獲取到相對於前一次座標點的偏移量,並通過偏移量來修改View的座標,這樣不斷重複,從而實現滑動過程。 下面我們來看

原创 ListView使用技巧

設置ListView需要顯示在第幾頁 當需要指定ListView具體顯示的Item時,可以通過如下代碼來實現: mListView.setSelection(position); 但這個方法類似scrollTo,是瞬間完成的移動。

原创 Android繪圖機制與處理技巧(四)——Android圖像處理之畫筆特效處理

除了常用的畫筆屬性,比如普通的畫筆(Paint),帶邊框、填充的style,顏色(Color),寬度(StrokeWidth),抗鋸齒(ANTI_ALIAS_FLAG)等,Android還提供了各種各樣專業的畫筆工具,如記號筆、毛

原创 Android Scroll分析(一)——滑動效果是如何產生的

滑動一個View,本質上來說就是移動一個View。改變其當前所處的位置,它的原理與動畫效果的實現非常相似,都是通過不斷地改變View的座標來實現這一效果。所以,要實現View的滑動,就必須監聽用戶觸摸的事件,並根據事件傳入的座標,

原创 Android繪圖機制與處理技巧(一)——Android繪圖技巧

Canvas Canvas作爲繪製圖形的直接對象,提供了以下幾個非常有用的方法。 canvas.save() canvas.restore() canvas.rotate() canvas.translate() canvas

原创 移動迷宮——拼圖遊戲

拼圖遊戲就是將用戶選擇的圖片根據選擇的難度進行分割,並抽出一張圖片用空白塊代替,同時隨機打亂順序,作爲拼圖的初始遊戲界面。當用戶點擊空白塊周圍上下左右相鄰的圖片時,可以移動該圖片,當整個圖片的位置都與原始圖片一致時,拼圖完成。 拼圖算法

原创 持有對象(集合)

添加一組元素 在java.util包中的Arrays和Collections類中都有很多實用方法,可以在一個Collection中添加一組元素。Arrays.asList()方法接受一個數組或是一個用逗號分隔的元素列表(使用可變參數),並

原创 Android動畫機制與使用技巧(四)——Android動畫特效

靈動菜單 下圖中展示的是靈動菜單的效果圖。當用戶點擊小紅點後,彈出菜單,並帶有一個緩衝的過渡動畫,這也是Google在Material Design中所強調的動畫過渡效果。 那這樣一個動畫效果的菜單該怎麼實現?首先,它具有交互性,所以肯

原创 Android 5.X 新特性詳解(四)——Material Design 動畫效果

Ripple效果 在Android 5.X 中,Material Design 大量使用了Ripple效果,即點擊後的波紋效果。可以通過如下代碼設置波紋的背景。 //有界波紋 android:background="?android:at

原创 mysql介紹——基礎知識

數據庫管理 登陸數據庫 打開cmd -> 輸入 mysql -u root -p 回車 -> 輸入密碼 回車 C:\Users\46319>mysql -u root -p Enter password: **** Welc

原创 通過異常處理錯誤

異常的丟失 Java的異常實現也有瑕疵,異常作爲程序出錯的的標誌,絕不應該被忽略,但它還是有可能被輕易的忽略。用某些特殊的方式使用finally子句,就會發生這種情況: package com.huangfei.thinkinginjav

原创 吸血鬼數字

吸血鬼數字是指位數爲偶數的數字,可以由一對數字相乘而得到,而這對數字各包含乘積的一半位數的數字,其中從最初的數字中選取的數字可以任意排序。以兩個0結尾的數字是不允許的,例如,下列數字都是“吸血鬼”數字: 1260 = 21 * 60

原创 找出1~n之間的所有素數

根據概念判斷 在大於1的自然數中,除了1和它本身以外不再有其他因數,這樣的數稱爲質數。 private static void findPrimes(int n){ if(n < 2) re

原创 mysql介紹——基礎加強

數據約束 數據約束就是對用戶操作表的數據進行約束。 默認值 作用: 當用戶對使用默認值的字段不插入值的時候,就使用默認值。 注意: 對默認值字段插入null是可以的,對默認值字段可以插入非null。 CREATE TABLE stude