Time of Update: 2017-01-19
本文執行個體講述了Android編程判斷應用程式是否已安裝的方法。分享給大家供大家參考,具體如下:這裡以twitter程式為例,假設twitter程式包名為“com.twitter.android”。這時候可用以下代碼來判斷是否被安裝。PackageInfo packageInfo;try { packageInfo = this.getPackageManager().getPackageInfo( "com.twitter.android", 0);} catch
Time of Update: 2017-01-19
OTTO是一個EventBus類型的事件傳輸匯流排,它可以提供“儲存轉寄”的功能,讓你APP中各個組件的交流更加便利,讓你的程式分層更加清晰。使用情境OTTO基於Observer設計模式。它有發行者,訂閱者這兩個主要對象。OTTO的最佳實務就是通過反射犧牲了微小的效能,同時極大的提高了程式的耦合度,更加利於MVP分工開發與維護。業務層開發人員在處理資源(比如Db,
Time of Update: 2017-01-19
對於Android平台上的線程優先順序設定來說可以處理很多並發線程的阻塞問題,比如很多無關緊要的線程會佔用大量的CPU時間,雖然通過了MultiThread來解決慢速I/O但是合理分配優先順序對於並發編程來說十分重要。Android線上程方面主要使用的是Java本身的Thread類,我們可以在Thread或Runnable介面中的run方法首句加入Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
Time of Update: 2017-01-19
Volley現在已經被官方放到AOSP裡面,已經逐步成為Android官方推薦的網路架構。類抽象對Http協議的抽象Requeset顧名思義,對請求的封裝,實現了Comparable介面,因為在Volley中是可以指定請求的優先順序的,實現Comparable是為了在Request任務隊列中進行排序,優先順序高的Request會被優先調度執行。NetworkResponseHttp響應的封裝,其中包括返回的狀態代碼 頭部
Time of Update: 2017-01-19
自從iOS系統引入了Blur效果,也就是所謂的毛玻璃、模糊化效果、磨砂效果,各大系統就開始競相模仿,這是怎樣的一個效果呢,我們先來看一下,如下面的圖片:實現效果大家都知道了,如何在Android中實現呢,說白了就是對圖片進行模糊化處理,小編先給大家講一下Android進階模糊技術的原理,如下: 首先我建立了一個空的bitmap,把背景的一部分複製進去,之後我會對這個bitmap進行模糊處理並設定為TextView的背景。 通過這個bitmap儲存Canvas的狀態;
Time of Update: 2017-01-19
由於Android的設定中並沒有夜間模式的選項,對於喜歡睡前玩手機的使用者,只能簡單的調節手機螢幕亮度來改善體驗。目前越來越多的應用開始把夜間模式加到自家應用中,沒準不久google也會把這項功能添加到Android系統中吧。業內關於夜間模式的實現,有兩種主流方案,各有其利弊,我較為推崇第三種方案:1、通過切換theme來實現夜間模式。2、通過資源id映射的方式來實現夜間模式。3、通過修改uiMode來切換夜間模式。值得一提的是,上面提到的幾種方案,都是資源內嵌在Apk中的方案,像新浪微博那種需
Time of Update: 2017-01-19
經過了幾天的痛苦煎熬,終於把微信支付調通,整個調試過程很痛苦,痛苦的主要來源是微信支付的調試真的是,以前調試公眾號支付也是一波三折啊。好吧,開始!首先說明,我這裡主要沒有使用getToken,getOrder方法,我的所有參數全部是在後端產生傳遞給前端的,看了一下前面朋友分享的原始碼,還用到了jquery,md5,sha對於新手來說簡直是天文啊,而且jquery在apicloud中效率不好,所以放棄了研究那個代碼,另外官方也說了,最好籤名等參數全部伺服器端產生,微信也是這麼說的。注意:微信本身在
Time of Update: 2017-01-19
首先給大家介紹Android使用緩衝機制實現檔案下載在下載檔案或者線上瀏覽檔案時,或者為了保證檔案下載的正確性,需要使用緩衝機制,常使用SoftReference來實現。SoftReference的特點是它的一個執行個體儲存對一個Java對象的軟引用,該軟引用的存在不妨礙垃圾收集線程對該Java對象的回收。也就是說,一旦SoftReference儲存了對一個Java對象的軟引用後,在垃圾線程對這個Java對象回收前,SoftReference類所提供的get()方法返回Java對象的強引用。另外
Time of Update: 2017-01-19
在android項目中訪問網狀圖片是非常普遍性的事情,如果我們每次請求都要訪問網路來擷取圖片,會非常耗費流量,而且圖片佔用記憶體空間也比較大,圖片過多且不釋放的話很容易造成記憶體溢出。針對上面遇到的兩個問題,首先耗費流量我們可以將圖片第一次載入上面緩衝到本地,以後如果本地有就直接從本地載入。圖片過多造成記憶體溢出,這個是最不容易解決的,要想一些好的緩衝策略,比如大圖片使用LRU緩衝策略或懶載入緩衝策略,首先介紹一下本機快取圖片。首先看一下非同步載入緩衝本地代碼:public class
Time of Update: 2017-01-19
本文執行個體分析了Android開發中Intent傳遞對象的方法。分享給大家供大家參考,具體如下:方法一:利用方法:public Intent putExtra (String name, Parcelable value)傳遞一個Parceable的參數,此方法的參數被序列化到記憶體。利用方法:public Intent putExtra (String name, Serializable
Time of Update: 2017-01-19
本文執行個體講述了Android設定TextView顯示指定個數字元,超過部分顯示...(省略符號)的方法。分享給大家供大家參考,具體如下:一、問題:今天在公司遇到一個需求;TextView設定最多顯示8個字元,超過部分顯示...(省略符號)二、解決方案:網上找了很多資料,有人說分別設定TextView的android:signature="true",並且設定android:ellipsize="end";但是我試了,並沒有成功,最後自己試出一種方式如下:供大家參考<TextViewan
Time of Update: 2017-01-19
在做商城的項目中,有這麼個需求,就是一個產品下有兩個價格,一個是市場價,一個是銷售價,這時要把市場價添加個刪除線;剛開始遇到這個時,在網上找了半天的資料,看到最多的就是用SpannableString這個類中的方法,而且代碼多,感覺有點繁瑣,後來發現用Paint裡的一些方法實現更好,只須一句代碼public class TestActivity extends Activity {private TextView tv;@Overridepublic void onCreate(Bundle
Time of Update: 2017-01-19
本文執行個體講述了Android重寫TextView實現文字整齊排版的方法。分享給大家供大家參考,具體如下:XRTextView類package rong.android.test;import org.json.JSONArray;import org.json.JSONException;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import
Time of Update: 2017-01-19
文章將在原有基礎之上做了一些擴充功能: 1.圖片的慣性滑動 2.圖片縮放小於正常比例時,鬆手會自動回彈成正常比例 3.圖片縮放大於最大比例時,鬆手會自動回彈成最大比例實現圖片的縮放,平移,雙擊縮放等準系統的代碼如下,每一行代碼我都做了詳細的注釋public class ZoomImageView extends ImageView implements ScaleGestureDetector.OnScaleGestureListener, View.OnTouchListener ,
Time of Update: 2017-01-19
左右切換圖片控制項大家都用ViewPager, ViewFipper比較多吧,我之前也用ViewPager實現了,使用ViewPager實現左右迴圈滑動圖片,有興趣的可以去看下,今天介紹的是基於ImageSwitcher實現的左右切換圖片,先上截圖吧好了,接下來來看代碼吧,第一張圖是一個GridView,點擊item跳轉到第二個介面,第一個介面可以忽略,主要是講解ImageSwitcher的左右卻換圖片,先看布局檔案<?xml version="1.0"
Time of Update: 2017-01-19
本文執行個體介紹了Android實現ImageView圖片雙擊放大及縮小的相關技巧,分享給大家供大家參考,具體內容如下public class DoubleScaleImageView extends ImageView implements OnTouchListener, OnGlobalLayoutListener { private boolean isFirst = false; private float doubleScale;// 雙擊放大的值 private
Time of Update: 2017-01-19
本文執行個體講述了Android AutoCompleteTextView串連資料庫自動提示的方法。分享給大家供大家參考,具體如下:這個簡單例子也體現MVC的思想。AutoCompleteTextView 就是View,而SimpleCursorAdapter就是Controller,SQLiteOpenHelper就相當於Model。1、首先定義MVC中的Model,自訂DBHelper類繼承SQLiteOpenHelper用於訪問資料庫import
Time of Update: 2017-01-19
本文執行個體講述了Android編程擷取手機螢幕解析度大小的方法。分享給大家供大家參考,具體如下:import android.app.Activity;import android.os.Bundle;import android.util.DisplayMetrics;import android.widget.TextView;public class A03Activity extends Activity { private TextView mTextView01; /**
Time of Update: 2017-01-19
上一篇已經帶大家實現了自由的放大縮小圖片,簡單介紹了下Matrix;具體請參考:Android實現手勢滑動多點觸摸縮放平移圖片效果,本篇繼續完善我們的ImageView。首先加入放大後的移動。1、自由的進行移動我們在onTouchEvent裡面,加上移動的代碼,當然了,必須長或寬大於螢幕才可以移動~~~@Override public boolean onTouch(View v, MotionEvent event) { mScaleGestureDetector.onTouchEvent(
Time of Update: 2017-01-19
對於用戶端——伺服器端應用,從遠程擷取圖片算是經常要用的一個功能,而圖片資源往往會消耗比較大的流量,對應用來說,如果處理不好這個問題,那會讓使用者很崩潰,不知不覺手機流量就用完了,等使用者發現是你的應用消耗掉了他手機流量的話,那麼可想而知你的應用將面臨什麼樣的命運。另外一個問題就是載入速度,如果應用中圖片載入速度很慢的話,那麼使用者同樣會等到崩潰。 那麼如何處理好圖片資源的擷取和管理呢? *非同步下載 *本機快取 1、非同步下載: