Inflate()作用就是將xml定義的一個布局找出來,但僅僅是找出來而且隱藏的,沒有找到的同時並顯示功能。最近做的一個項目就是這一點讓我迷茫了好幾天。android上還有一個與Inflate()類似功能的方法叫findViewById(),二者有時均可使用,但也有區別區別在於:如果你的Activity裡用到別的layout,比如對話方塊layout,你還要設定這個layout上的其他組件的內容,你就必須用inflate()方法先將對話方塊的layout找出來,然後再用findViewById
第一步,向實現自訂標題列,需要在onCreate方法裡這樣寫requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar); 注意:requestWindowFeature要在setContentView之前getWindow().set
在android2.0中已經可以很簡單的實現Activity 之間的動畫轉場效果。在startActivity 後調用 overridePendingTransition(int enterAnim,int exitAnim),就可以實現Activity之間的動畫,其中enterAnim 是下一個Activity的enter動畫效果,exitAnim
Adapter是資料繫結到UI介面上的橋接類,Adapter負責建立顯示每個item的子View和提供對下層資料的訪問,通過它將資料填充到ListView, GridView, Gallery。Android 系統提供了幾種Adapter:ArrayAdapter<T>、 BaseAdapter、CursorAdapter、 HeaderViewListAdapter、ListAdapter、 ResourceCursorAdapter、SimpleAdapter、
private static Boolean isExit = false; privatestatic Boolean hasTask =false; Timer tExit =new Timer(); TimerTask task =new TimerTask() { @Override publicvoid run() { isExit = ture; hasTask
Android在載入資料(訪問資料庫或者載入網路資料),需要顯示載入進度,其實這個非常簡單!1.載入資料進度顯示的XML布局檔案<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
AutoCompleteTextView是android中內建的實現自動匹配輸入的一個控制項!具體用法如下: 1.Activity檔案: import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; public class AutocompleteTV
•android:theme="@android:style/Theme.Dialog" 將一個Activity顯示為能話框模式•android:theme="@android:style/Theme.NoTitleBar" 不顯示應用程式標題欄•android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 不顯示應用程式標題欄,並全屏•android:theme="Theme.Light"
1.設計思路,使用VersionCode定義為版本升級參數。 android為我們定義版本提供了2個屬性:1<manifestpackage="com.cnblogs.tianxia.subway"2 android:versionCode="1"<!--Integer類型,系統不顯示給使用者-->3 android:versionName="1.0"<!--String類型,系統顯示使用者-->4></manifest>
Android手機大部分支援WIFI、GSM、3G網路,但每次串連網路肯定只能使用其中一種。有些程式(比如:電訊廠商定製的)還必須要求使用特定的網路(如:CMWAP、CTWAP等等),如果當前手機串連的網路不 是這些指定的網路,這時的程式處理可能是跳轉到網路設定介面讓使用者手動設定,也有可能是程式自動卻換網路(從CMNET切換到CMWAP)。
dip: device independent pixels(裝置獨立像素). 不同裝置有不同的顯示效果,這個和裝置硬體有關,一般我們為了支援WVGA、HVGA和QVGA 推薦使用這個,不依賴像素; px: pixels(像素). 不同裝置顯示效果相同,一般我們HVGA代表320x480像素,這個用的比較多; pt: point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,非常簡單易用; sp: scaled
直接給代碼好啦,程式員都懂得!if (!isConnectInternet(getContext())) { Toast.makeText(getContext(), "暫時沒有可用的網路,請檢查網路", Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(getContext(), R.string.userorpass_wrong,
ANR ( “Application Not Responding”),意思是“應用沒有響應”。在如下情況下,Android會報出ANR錯誤: –主線程 (事件處理線程/UI線程) 在5秒內沒有響應輸入事件 –BroadcastReceiver 沒有在10秒內完成返回 1、在主線程內進行網路操作2、在主線程內進行一些緩慢的磁碟操作(例如執行沒有最佳化過的SQL查詢) 應用程式應該在5秒或者10秒內響應,否則使用者會覺得“這個應用很垃圾”“
1、擷取資源: Resources res = getBaseContext().getResources(); Drawable draw=res.getDrawable(R.drawable.icon);2、獲得數組: String[] ary = getResources().getStringArray(R.array.ary); 3、自動提示框:代碼String[] arrays=new
1) 如果一定要隱藏使用如下方法: InputMethodManager imm = (InputMethodManager) leftBtn.getContext().getSystemService(INPUT_METHOD_SERVICE);
即使你的應用程式是快速且響應靈敏的,但一些設計仍然會給使用者造成問題——與其它應用程式或對話方塊未事先計劃的互動,意外的資料丟失,意料之外的阻塞等等。避免這些問題,有助於理解應用程式啟動並執行上下文和系統的互動過程,而這些又正影響著你的應用程式。簡而言之,你應該竭盡全力去開發一個與系統和其它應用程式流程暢互動的應用程式。 一個常見的流暢問題是,一個應用程式的幕後處理——例如,一個
android項目開發中的debug是很重要的,以下轉載自前輩的文章,記錄一下: 程式員最頭疼的事情就是bug和debug。這次debug長達20天,搞的我心力交瘁。累,因為Android相容性,不同手機會有不同的bug 出來,而且很難複現,所以就上網找了下類似儲存錯誤log到檔案再上傳到伺服器,現把源碼也共用出來。上傳至伺服器的代碼我沒加。相信大家都有現成的代碼了。先講下原理,跟JavaEE的自訂異常捕獲一樣,將錯誤一直向上拋,然後在最上層統一處理。這裡就可以獲得Exception
res/anim/---XML動畫檔案res/drawable/---一些問題檔案 res/layout/---XML布局檔案 res/values/---各種xml資源檔 ①arrays.xml:xml數組檔案②colors.xml:xml顏色檔案③dimens.xml:xml尺寸檔案④styles.xml:xml樣式檔案 res/xml/---任一xml檔案res/raw/---直接複製到裝置中的原生檔案res/menu/---xml菜單檔案 **********************
第一步:首先你得瞭解TabHost和TabWidget, 將TabHost分為兩個部分,一個是放內容的,還有一個就是放選項卡的,我們這裡選項卡用TabWidget。TabHost的id應該寫為android:id="@android:id/tabhost",而不是以前的那個加號,這樣可以直接在Activity裡面通過getTabHost方法得到此TabHost對象。那如何才能將選項卡放在最底部呢,這其實很簡單,還記得 RelativeLayout中android:layout_alignBot
對於能夠顯示文字的控制項(如TextView EditText RadioButton Button CheckBox