Time of Update: 2013-12-11
實現和飛航模式widget類似,只貼出不同代碼:public class WifiWidget extends AppWidgetProvider { private final static String SET_WIFI_ACTION = "com.archermind.wifi.widget.set_wifi"; private static final int START_ANIMATION = 0; private
Time of Update: 2013-12-11
常用用法:回調方法介面,向上轉型動態綁定,常量介面。回調方法介面: Java代碼 public interface ICallback { public void func(); } public class Caller { ICallback callback; public void doCallback()
Time of Update: 2013-12-11
一、基本概念 在手機使用時,經常碰到這種情況:比如在我們下載的時候,若是將下載方法單獨為一個Activity的時候,那麼下載時,其他的Activity是沒有響應的,那麼這個時候整部手機就處於了當機的狀態,而Handler就是用來解決這個問題的. 意思就是說,將下載放在一個單獨的線程,那麼當這個線程執行的時候,並不會影響該Activity的線程.二、使用方法 通過調用handler的post方法實現線程的操作.一個最簡單的Handler例子:XML檔案: J
Time of Update: 2013-12-11
當我們使用LinearLayout進行android頁面配置時常常會遇到各種各樣的布局。如需要從底部繪製一個固定的view這時我們就用到了LinearLayout的android:gravity="bottom|right|left"。具體實現如下: <LinearLayout
Time of Update: 2013-12-11
最近做的2個東西中都碰到了需要對使用者手勢輸入監聽並做出一定的相應 抽空把這些基礎實現做個記錄 網上這方面資料也不少 這裡說的手勢監聽只是簡單的比如上滑,下滑,拖動等,而沒有說到畫圖板這樣的應用 當然舉一反三這個也是能實現的。這裡分2種
Time of Update: 2013-12-11
當使用者與視圖views進行互動的時候,views也會觸發事件。舉個例子,當使用者點擊了一個按鈕,你需要為這個事件服務,只有這樣,才能去執行某些適當的行為。如果想這麼做的話,你就需要為視圖views註冊監聽。使用上一節中的例子,在activity中有兩個Button。我們可以使用一個匿名的類,為按鈕設定點擊事件。[java]package net.learn2develop.UIActivity; import
Time of Update: 2013-12-11
PopupWindow的很多用法網上比較多,我就不做過多解釋了,只說下可能會遇到的問題,以及解決辦法: 1、PopupWindow中的listview無響應 這個主要是因為show寫在了setFocusable前面
Time of Update: 2013-12-11
本例介紹如何在TableLayout中使用空儲存格,一種是跳過該儲存格,一種是使用不可見的View佔據某個儲存格:<TableLayout
Time of Update: 2013-12-11
我們備份手機連絡人時,匯出到SD卡時,會在SD卡中產生一個vcf檔案,用於儲存連絡人姓名,手機號碼。vCard 規範容許公開交換個人資料交換(Personal Data Interchange PDI)資訊,在傳統紙質商業名片可找到這些資訊。規範定義電子名片(或叫vCard)的格式。而在Android上使用vcard就要藉助第三方包: 將它複製進工程,然後Add jar即可,實現代碼很簡單,如下:[html] if
Time of Update: 2013-12-11
SQList常用的寫法,我就不提了,這裡主要是補充一個當資料庫更新的時候,需要增加列的時候的寫法:舉例來說:在user表中,增加性別一列,預設1為男,0為女,那麼寫法為:alter table user add sex bit default 1如果不需要預設值的話,就把default 1去掉即可,但如果查詢新增加列的話,之前的已有資料的該列就會為null,這點要注意一下。有增就得有刪,那麼刪除一列的寫法如下:alter table user drop sex
Time of Update: 2013-12-11
我們也可以建立另外一種片段——DialogFragment。顧名思義,DialogFragment就是一個浮動在Activity上面的Fragment。當需要使用者的反饋時,DialogFragment就會派上用場。與使用ListFragment類似,需要繼承DialogFragment基類。下面將會展示如何使用DialogFragment。1. 建立一個工程:DialogFragmentExample。2.
Time of Update: 2013-12-11
介紹過Activity本身提供了可以控制顯示在Titlebar的進度條顯示 ,那個例子使用是水平進度條,本例在Titlebar中顯示一個Spinning wheel 。首先需要設定在 Titlebar 的進度條的可用性,setProgressBarIndeterminateVisibility 設定 “Indeterminate” 模式的進度條的可見度,而setProgressBarVisibility
Time of Update: 2013-12-11
RadioGroup 用來管理一組Radio Button,RadioButton 為單選鈕,同一組中的RadioButton只能有一個選中。前面的例子有Android ApiDemos樣本解析(107):Views->Controls->1. Light
Time of Update: 2013-12-11
Injector 的工作就是構造Object Graph,當你調用getInstance 來構造某個類型的對象時,Injector 會自動根據類之間的依賴關聯建立所需類的執行個體。定義類之間的依賴關係的方法是通過擴充AbstractAndroidModule,重載其configure方法。在configure方法中定義各種Bindings。這些方法同時也做類型檢測,如果使用的類型不正確,編譯器將給出錯誤。綁定Bindings 可以有下面幾種類型:Linked bindingsinstance
Time of Update: 2013-12-11
建立一個進程服務.程式第一次啟動並執行時候就建立.不需要介面要想其他進程能夠跨進程的調用本進程的方法.就得使用跨進程訪問的介面類型.只需將介面中類和方法的修飾符去掉就行.然後把介面類編程aidl類型服務也業務代碼:[java] package com.example.remoteservice; import android.app.Service; import android.content.Intent; import
Time of Update: 2013-12-11
AwesomePlayer 中有個變數[cpp] OMXClient mClient; 讓我們看看 OMXClient[cpp] class OMXClient { public: OMXClient(); status_t connect(); void disconnect(
Time of Update: 2013-12-11
本例介紹TextSwitcher 的用法,我們在前面介紹過ImageSwitcher的用法Android ApiDemos樣本解析(124):Views->ImageSwitcher ,ImageSwitcher 和TextViewSwitcher都是ViewSwitcher 的子類,ViewSwitcher又是ViewAnimator 的子類,ViewAnimator (FrameLayout的子類)提供了不同View之間切換時的動畫效果支援,而ViewAnimator
Time of Update: 2013-12-11
Android主題定製及修改簡介:在寫Android的App時,我們在Layout中的xml檔案中都會引用到大量的布局組件及風格,有時Android提供的原生組件並不能滿足我們的需求,這時我們就要考慮對style及theme進行定製及修改。布局檔案的解釋原理:在Layout的每一個控制項如TextView、EditText、Button等,例如Button控制項,在目錄frameworks/base/core/java/android/widget/下存在Button.java這個檔案,在But
Time of Update: 2013-12-11
的執行緒模式:當一個 android 的應用運行後,就會有一個 UI 的 main 線程啟動 , 這是一個非常重要的線程,它負責把事件指派到相應的控制項,其中就包括螢幕繪圖事件,它同樣是使用者與 android 控制項 互動的線程。比如,當你在螢幕上的 EditText 上輸入文字, UI 線程會把這個事件分發給剛輸入文字的 EditText ,緊接會向事件隊列發送一個更新 ( invalidate )請求。 UI 線程會把這個請求移出事件隊列並通知 EditText
Time of Update: 2013-12-11
android中類型轉換好像支援不是太好,備份下有用的類型轉換函式和工具函數.一、類型轉換1.byte 轉 int ( int 可以再轉成long double float )[java] public static int byteToInt(byte[] data, int offset) { int result =