Time of Update: 2018-12-05
在實際應用中經常會遇到比較耗時任務的處理,比如網路連接,資料庫操作等情況時,如果這些操作都是放在主線程(UI線程)中,則會造成UI的假死現象,Android中可以使用AsyncTask和Handler兩種非同步方式來解決這種問題。前面已經介紹過AsyncTask非同步方式詳解及其使用,下面介紹Handler非同步方式詳解及其使用。關於Android中的訊息機制,大家可以學習下這篇文章:Android訊息處理機制。1.Handler的定義主要接受子線程發送的資料,並用此資料配合主線程更新UI。當
Time of Update: 2018-12-05
2011-04-21 13:02 944人閱讀 評論(3)收藏 舉報view plaincopy to clipboardprint?DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); //螢幕寬度 int widthPixels = dm.widthPixels; //螢幕高度
Time of Update: 2018-12-05
在實際應用中經常會遇到比較耗時任務的處理,比如網路連接,資料庫操作等情況時,如果這些操作都是放在主線程(UI線程)中,則會造成UI的假死現象,Android中可以使用AsyncTask和Handler兩種非同步方式來解決這種問題。Handler非同步方式詳解及其使用AsyncTask(非同步任務處理)在使用AsyncTask時處理類需要繼承AsyncTask,提供三個泛型參數,並且重載AsyncTask的四個方法(至少重載一個)。 三個泛型參數:1.Param
Time of Update: 2018-12-05
要建立一個自訂的Notification,可以使用RemoteViews。要定義自己的擴充訊息,首先要初始化一個RemoteViews對象,然後將它傳遞給Notification的contentView欄位,再把PendingIntent傳遞給 contentIntent欄位。以下範例程式碼是完整步驟://1、建立一個自訂的訊息布局 view.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout
Time of Update: 2018-12-05
char* r = "hello word!";char b[]="hello word!"*r = 'w';*b='w';其實應該是語法錯誤,可是VC++6.0沒有警告或者錯誤,r指向的是文字常量區,此地區是編譯的時候確定的,並且程式結束的時候自動釋放的, *r = 'w';企圖修改文字常量區引起錯誤,b的區別在於其空間是在棧上分配的,因此沒有錯誤。const char* r = "hello word!";*r =
Time of Update: 2018-12-05
1。^\d+$ //匹配非負整數(正整數 + 0) 2。^[0-9]*[1-9][0-9]*$ //匹配正整數 3。^((-\d+)|(0+))$ //匹配非正整數(負整數 + 0) 4。^-[0-9]*[1-9][0-9]*$ //匹配負整數 5。^-?\d+$ //匹配整數 6。^\d+(\.\d+)?$ //匹配非負浮點數(正浮點數 + 0) 7。^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[
Time of Update: 2018-12-05
在實際工作中,事先寫好的布局檔案往往不能滿足我們的需求,有時會根據情況在代碼中自訂控制項,這就需要用到LayoutInflater。LayoutInflater在Android中是“擴充”的意思,作用類似於findViewById(),不同的是LayoutInflater是用來獲得布局檔案對象的,而findViewById()是用來獲得具體控制項的。LayoutInflater經常在BaseAdapter的getView方法中用到,用來擷取整個View並返回。LayoutInflater的用法
Time of Update: 2018-12-05
http://yuanzhifei89.iteye.com/blog/983944 在listView 中的textView高亮顯示文字 @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder = null; String name = ""; String phone =
Time of Update: 2018-12-05
最近學習了Android怎麼訪問WebService。把過程記錄一下 1.設定模擬器可以上網 Windows下,配置好Adroid環境變數後(如將d:\android-sdk-windows-1.0_r1\tools加入系統變數PATH),在命令列視窗輸入:emulator 啟動Android 模擬器後, 輸入: adb shell 進入adb shell模式: 將網路連接代理設定寫入設定資料庫,假如你的上網代理IP是10.193.xx.xx: sqlite3
Time of Update: 2018-12-05
問題cts測試時發現在result.xml頭部中有很多關於手機的資訊,包括當前系統有哪些功能,以及build版本等等,這些心怎麼顯示出來的?分析cts 測試中會在TestDeviceSetup app中調用 getFeatures() 該方法返回所有系統的feature,該app是cts的tool源碼路徑為/cts/tool/device-setup.getFeature的具體實現: StringBuilder features = new StringBuilder();
Time of Update: 2018-12-05
方法一 : http://blog.csdn.net/xys289187120/article/details/6730957 方法二 : // 遍曆所有的電話號碼 Cursor phoneCur = getContentResolver().query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null); private void
Time of Update: 2018-12-05
在開發中我們經常需要把我們的應用設定為全屏,這裡我所知道的有倆中方法,一中是在代碼中設定,另一種方法是在設定檔裡設定!1.在代碼中設定(在需要設定全屏的Activity的onCreate方法裡面加入如下兩段代碼)。view plaincopy to clipboardprint?public class FullScreenActivitys extends Activity { public void onCreate(Bundle savedInstanceState) {
Time of Update: 2018-12-05
android.widget.ViewAnimator類繼承至FrameLayout,ViewAnimator類的作用是為FrameLayout裡面的View切換提供動畫效果。該類有如下幾個和動畫相關的函數:l
Time of Update: 2018-12-05
簡訊介面更新1、核心類MessageListview MessageListAdapterMmsProviderMmsSmsProviderSmsProvider2、provider的分類資料庫的概況 這是簡訊資料庫的大致情況,對於簡訊而言最重要的表就是sms threads words2.1 Smsprovideruri:content://sms該provider是針對sms表進行的增 刪 改 查2.2 MmsProvideruri: content://mms負責part、pdu表的增
Time of Update: 2018-12-05
Phone的啟動流程啟動流程1) phone 在其manifest.xml中聲明了persistent屬性<application android:name="PhoneApp" android:persistent="true" android:label="@string/dialerIconLabel" android:icon="@drawable/ic_launcher_phone"&
Time of Update: 2018-12-05
測試簡介 該項測試在androidR12的版本上引入,在測試case中有一個叫CtsMediaStresTestCases的apk,該apk包含了壓力測試的所有子項。測試前的準備:
Time of Update: 2018-12-05
STK菜單點擊處理流程1、引言 對於sim卡的stk這塊,其處理邏輯十分複雜,在此以點擊其菜單為例,來分析其整個處理邏輯,對於modem側在此不作分析,重點解析rild以上的事務和資料流向。2、時序圖2.1 點擊處理流程注意:流程僅僅是當點擊某一個menu的一系列操作,此將對應的內容傳遞到rild中,顯然該流程僅僅是開始,這邊廂modem根據傳遞過來的命令將資料返回在第二個流程裡。2.2
Time of Update: 2018-12-05
Mms簡訊群發實現原理1、引入 大家也許對單條簡訊的發送已經非常清楚明白,但對簡訊的群發可能是一知半解,那簡訊的群發是怎麼樣實現的了?本章重點解析Mms短息群發功能的實現。這裡要注意了如果大家對於簡訊發送的流程不清楚的同學可以看看我前面講到的簡訊發送和接收流程。2、概括2.1、類圖2.2、時序圖 由於此時序圖太大有一些不清晰還請見諒;3、具體解析時序圖有太大所以不是很清晰;這裡對時序圖進行解析,主要一大部分是簡訊的發送流程,所以在此重點講解群發與單條簡訊的區別之處;3.1
Time of Update: 2018-12-05
STK1、STK 資料的流向大致如所示從可以看出對stk的操作也是需要通過rild來完成;2、rild關於stk的處理大致分為以下幾種1)solited類型,表示由android主動發送請求,然後rild經modern的返回該請求的資料 case RIL_REQUEST_STK_GET_PROFILE: ret = responseString(p); break; case RIL_REQUEST_STK_SET_PROFILE: ret =
Time of Update: 2018-12-05
剛才做開發的時候遇到了這樣的問題,java.lang.RuntimeException:Unable to start activity ComponentInfo經常尋找原來是添加取消標題取消標題的代碼的原因 requestWindowFeature(Window.FEATURE_NO_TITLE);// //取消標題