Android InputMethodManager輸入法簡(jiǎn)介
一、結(jié)構(gòu)
public final class InputMethodManager extends Object
Java.lang.Object
android.view.inputmethod.InputMethodManager
二、類概述
整個(gè)輸入法框架(IMF)結(jié)構(gòu)的核心API,應(yīng)用程序之間進(jìn)行調(diào)度和當(dāng)前輸入法交互。你可以用Context.getSystemService()取得這一接口的實(shí)例。
架構(gòu)總述(Architecture Overview)
輸入法框架(IMF)共有三個(gè)主要部分:
* 輸入法管理器,管理各部分的交互。它是一個(gè)客戶端API,存在于各個(gè)應(yīng)用程序的context中,用來(lái)溝通管理所有進(jìn)程間交互的全局系統(tǒng)服務(wù)。
* 輸入法(IME) ,實(shí)現(xiàn)一個(gè)允許用戶生成文本的獨(dú)立交互模塊。系統(tǒng)綁定一個(gè)當(dāng)前的輸入法。使其創(chuàng)建和生成,決定輸入法何時(shí)隱藏或者顯示它的UI。同一時(shí)間只能有一個(gè)IME運(yùn)行。
* 客戶應(yīng)用程序,通過(guò)輸入法管理器控制輸入焦點(diǎn)和IME的狀態(tài)。一次只能有一個(gè)客戶端使用IME。
應(yīng)用程序(Applications)
大多數(shù)情況下,使用標(biāo)準(zhǔn)TextView或其子類的應(yīng)用程序只要做少量工作就可以讓軟鍵盤(pán)(soft input methods)正常工作。你要注意的是:
* 正確設(shè)置你的可編輯文本視圖inputType,這樣輸入法有足夠的上下文幫助用戶向其輸入文本。
* 當(dāng)輸入法顯示時(shí)妥善處理隱藏屏幕空間。理想的情況下應(yīng)用程序應(yīng)處理窗口變小,如必要你可以利用系統(tǒng)執(zhí)行平移窗口。你應(yīng)在活動(dòng)(activity)中設(shè)置windowSoftInputMode屬性或調(diào)整創(chuàng)建窗口的相應(yīng)值,以便系統(tǒng)決定平移或縮放(它會(huì)嘗試自動(dòng)調(diào)整但可能出錯(cuò))。
* 你還可以通過(guò)相同的windowSoftInputMode控制窗口的首選軟鍵盤(pán)狀態(tài)(打開(kāi)、關(guān)閉等)。
通過(guò)API可以與IMF及其IME交互實(shí)現(xiàn)更細(xì)致的控制,如顯示或輸入?yún)^(qū)域,用戶選取某輸入法等。
當(dāng)你編寫(xiě)自己的文本編輯器的時(shí)候,你要實(shí)現(xiàn)onCreateInputConnection(EditorInfo)以返回你的InputConnection的接口實(shí)例,用來(lái)允許IME和你的文本編輯域來(lái)交互。
輸入法(Input Methods)
一個(gè)輸入法(IME)是Service(服務(wù))的實(shí)現(xiàn),通常繼承自 InputMethodService。IME提供核心的 InputMethod接口,盡管提供InputMethod通常是由InputMethodService來(lái)處理,而IME的實(shí)現(xiàn)只需要處理更高層的API。
更多信息參閱InputMethodService。
安全(Security)
輸入法關(guān)系到許多安全問(wèn)題,因其基本不受約束地驅(qū)動(dòng)UI并監(jiān)視用戶輸入。Android輸入法框架還允許調(diào)度第三方IME,所必須小心以限制他們的選擇和相互作用。
以下是IMF背后安全架構(gòu)的要點(diǎn):
* 只允許系統(tǒng)訪問(wèn)經(jīng)BIND_INPUT_METHOD權(quán)限許可訪問(wèn)IME的InputMethod接口。通過(guò)綁定到要求這個(gè)權(quán)限的服務(wù)來(lái)強(qiáng)制實(shí)現(xiàn)這一點(diǎn)。所以系統(tǒng)可以保證沒(méi)有不被信任的客戶端在它的控制之外訪問(wèn)到當(dāng)前的輸入法。
* IMF中可能有許多客戶進(jìn)程,但在同一時(shí)間只有一個(gè)是激活的。未激活客戶端不能與IMF核心交互通過(guò)下述機(jī)制實(shí)現(xiàn)。
* 輸入法客戶端只可訪問(wèn)InputMethodSession接口。每個(gè)客戶端創(chuàng)建一個(gè)接口實(shí)例,只有與激活客戶相關(guān)聯(lián)的會(huì)話的調(diào)用才會(huì)被IME處理。這點(diǎn)通過(guò)普通IME的 AbstractInputMethodService執(zhí)行,必須由IME顯式的處理,而IME正是InputMethodSession的自定義實(shí)現(xiàn)。
* 只有激活的InputConnection接受操作。IMF通知每個(gè)客戶進(jìn)程是否激活,IMF忽略非激活進(jìn)程對(duì)當(dāng)前輸入聯(lián)接的調(diào)用。這確保了當(dāng)前IME只將事件和文本編輯交付用戶可見(jiàn)焦點(diǎn)的UI。
* 一個(gè)IME永遠(yuǎn)不能在屏幕關(guān)閉時(shí)與 InputConnection交互。這是通過(guò)當(dāng)屏幕關(guān)閉時(shí)所有客戶端無(wú)效,并防止不良IME在用戶無(wú)法關(guān)注其行為時(shí)驅(qū)動(dòng)UI。
* 客戶應(yīng)用程序可以要求系統(tǒng)選取一個(gè)新的IME,但不能編程式選擇之一。這是避免惡意程序在用戶導(dǎo)航到其它應(yīng)用程序時(shí),選擇自己的IME并保持運(yùn)行。也就是說(shuō),IME可以編程式的要求系統(tǒng)選擇其它IME,因它完全控制了用戶輸入。
用戶在可切換至一個(gè)新的IME前必須顯式的啟用它,以確認(rèn)系統(tǒng)了解它,使其處于可用狀態(tài)。
三、常量
public static final int HIDE_IMPLICIT_ONLY
hideSoftInputFromWindow(IBinder, int)中的標(biāo)志,表示如果用戶未顯式地顯示軟鍵盤(pán)窗口,則隱藏窗口。
常量值: 1 (0x00000001)
public static final int HIDE_NOT_ALWAYS
hideSoftInputFromWindow(IBinder, int)中的標(biāo)志,表示軟鍵盤(pán)窗口總是隱藏,除非開(kāi)始時(shí)以SHOW_FORCED顯示。
常量值: 2 (0x00000002)
public static final int RESULT_HIDDEN
showSoftInput(View, int, ResultReceiver)和hideSoftInputFromWindow(IBinder, int, ResultReceiver)中ResultReceiver結(jié)果代碼標(biāo)志:軟鍵盤(pán)窗口從顯示切換到隱藏時(shí)的狀態(tài)。
常量值: 3 (0x00000003)
public static final int RESULT_SHOWN
showSoftInput(View, int, ResultReceiver)和hideSoftInputFromWindow(IBinder, int, ResultReceiver)中ResultReceiver結(jié)果代碼標(biāo)志:軟鍵盤(pán)窗口從隱藏切換到顯示時(shí)的狀態(tài)。
常量值: 2 (0x00000002)
public static final int RESULT_UNCHANGED_HIDDEN
showSoftInput(View, int, ResultReceiver)和hideSoftInputFromWindow(IBinder, int, ResultReceiver)中ResultReceiver結(jié)果代碼標(biāo)志:軟鍵盤(pán)窗口不變保持隱藏時(shí)的狀態(tài)。
常量值: 1 (0x00000001)
public static final int RESULT_UNCHANGED_SHOWN
showSoftInput(View, int, ResultReceiver)和hideSoftInputFromWindow(IBinder, int, ResultReceiver)中ResultReceiver結(jié)果代碼標(biāo)志:軟鍵盤(pán)窗口不變保持顯示時(shí)的狀態(tài)。
常量值: 0 (0x00000000)
public static final int SHOW_FORCED
showSoftInput(View, int)標(biāo)志,表示用戶強(qiáng)制打開(kāi)輸入法(如長(zhǎng)按菜單鍵),一直保持打開(kāi)直至只有顯式關(guān)閉。
常量值: 2 (0x00000002)
public static final int SHOW_IMPLICIT
showSoftInput(View, int)標(biāo)志,表示隱式顯示輸入窗口,非用戶直接要求。窗口可能不顯示。
常量值: 1 (0x00000001)
四、公共方法
public void displayCompletions (View view, CompletionInfo[] completions)
?。ㄗg者注:輸入法自動(dòng)完成)
public InputMethodSubtype getCurrentInputMethodSubtype ()
(譯者注:獲取當(dāng)前輸入法類型?)
public List<InputMethodInfo> getEnabledInputMethodList ()
?。ㄗg者注:獲取已啟用輸入法列表?)
public List<InputMethodSubtype> getEnabledInputMethodSubtypeList (InputMethodInfo imi, boolean allowsImplicitlySelectedSubtypes)
public List<InputMethodInfo> getInputMethodList ()
(譯者注:獲取輸入法列表)
public Map<InputMethodInfo, List<InputMethodSubtype>> getShortcutInputMethodsAndSubtypes ()
public void hideSoftInputFromInputMethod (IBinder token, int flags)
關(guān)閉/隱藏輸入法軟鍵盤(pán)區(qū)域,用戶不再看到或與其交互。只能由當(dāng)前激活輸入法調(diào)用,因需令牌(token)驗(yàn)證。
參數(shù)
token 在輸入法啟動(dòng)時(shí)提供令牌驗(yàn)證,驗(yàn)證后可對(duì)其進(jìn)行操作。
flags 提供額外的操作標(biāo)志。當(dāng)前可以為0或 HIDE_IMPLICIT_ONLY, HIDE_NOT_ALWAYS等位設(shè)置。
public boolean hideSoftInputFromWindow (IBinder windowToken, int flags)
hideSoftInputFromWindow(IBinder, int, ResultReceiver)的無(wú)返回值版:從窗口上下文中確定當(dāng)前接收輸入的窗口,隱藏其輸入法窗口
參數(shù)
windowToken 由窗口請(qǐng)求View.getWindowToken()返回得到的令牌(token)。
flags 提供額外的操作標(biāo)志。當(dāng)前可以為0或 HIDE_IMPLICIT_ONLY位設(shè)置。
public boolean hideSoftInputFromWindow (IBinder windowToken, int flags, ResultReceiver resultReceiver)
從窗口上下文中確定當(dāng)前接收輸入的窗口,要求隱藏其軟鍵盤(pán)窗口。它可由用戶調(diào)用并得到結(jié)果而不僅僅是顯式要求輸入法窗口隱藏。
參數(shù)
windowToken 由窗口請(qǐng)求View.getWindowToken()返回得到的令牌(token)。
flags 提供額外的操作標(biāo)志。當(dāng)前可以為0或 HIDE_IMPLICIT_ONLY位設(shè)置。
resultReceiver 如不為空,當(dāng)IME處理請(qǐng)求告訴你完成時(shí)調(diào)用。你收到的結(jié)果碼可以是RESULT_UNCHANGED_SHOWN, RESULT_UNCHANGED_HIDDEN, RESULT_SHOWN, 或RESULT_HIDDEN。
public void hideStatusIcon (IBinder imeToken)
?。ㄗg者注:隱藏狀態(tài)欄圖標(biāo)?)
public boolean isAcceptingText ()
當(dāng)前服務(wù)視圖接受全文編輯返回真。沒(méi)有輸入法聯(lián)接為false,這時(shí)其只能處理原始按鍵事件。
public boolean isActive (View view)
視圖為當(dāng)前輸入的激活視圖時(shí)返回真。
public boolean isActive ()
輸入法中的任意視圖激活時(shí)返回真。
public boolean isFullscreenMode ()
判斷相關(guān)輸入法是否以全屏模式運(yùn)行。全屏?xí)r,完全覆蓋你的UI時(shí),返回真,否則返回假。
public boolean isWatchingCursor (View view)
如當(dāng)前輸入法要看到輸入編輯者的光標(biāo)位置時(shí)返回真。
public void restartInput (View view)
如有輸入法聯(lián)接至視圖,重啟輸入以顯示新的內(nèi)容。可在以下情況時(shí)調(diào)用此方法:視圖的文字導(dǎo)致輸入法外觀變化或有按鍵輸入流,如應(yīng)用程序調(diào)用TextView.setText()時(shí)。
參數(shù)
view 文字發(fā)生變化的視圖。
public void sendAppPrivateCommand (View view, String action, Bundle data)
對(duì)當(dāng)前輸入法調(diào)用 InputMethodSession.appPrivateCommand()。
參數(shù)
view 可選的發(fā)送命令的視圖,如你要發(fā)送命令而不考慮視圖附加到輸入法,此項(xiàng)可以為空。
action 執(zhí)行的命令名稱。必須是作用域的名稱,如前綴包名稱,這樣不同的開(kāi)發(fā)者就不會(huì)創(chuàng)建沖突的命令。
data 命令中包含的任何數(shù)據(jù)。
public boolean setCurrentInputMethodSubtype (InputMethodSubtype subtype)
?。ㄗg者注:此方法為3.0中新增的方法)
public void setInputMethod (IBinder token, String id)
強(qiáng)制切換到新輸入法部件。只能由持有token的應(yīng)用程序(application)或服務(wù)(service) 調(diào)用當(dāng)前激活輸入法。
參數(shù)
token 在輸入法啟動(dòng)時(shí)提供令牌驗(yàn)證,驗(yàn)證后可對(duì)其進(jìn)行操作。
id 切換到新輸入法的唯一標(biāo)識(shí)。
public void setInputMethodAndSubtype (IBinder token, String id, InputMethodSubtype subtype)
強(qiáng)制切換到一個(gè)新的輸入法和指定的類型。只能由持有token的應(yīng)用程序(application)或服務(wù)(service) 調(diào)用當(dāng)前激活輸入法。(譯者注:此方法為3.0中新增的方法)
參數(shù)
token 在輸入法啟動(dòng)時(shí)提供令牌驗(yàn)證,驗(yàn)證后可對(duì)其進(jìn)行操作。
id 切換到新輸入法的唯一標(biāo)識(shí)。
subtype 切換到新輸入法的新類型。
public void showInputMethodAndSubtypeEnabler (String topId)
(譯者注:此方法為3.0中新增的方法)
public void showInputMethodPicker ()
?。ㄗg者注:顯示輸入法菜單列表)
public boolean showSoftInput (View view, int flags, ResultReceiver resultReceiver)
如需要,顯式要求當(dāng)前輸入法的軟鍵盤(pán)區(qū)域向用戶顯示。當(dāng)用戶與視圖交互,用戶表示要開(kāi)始執(zhí)行輸入操作時(shí),可以調(diào)用此方法。
參數(shù)
view 當(dāng)前焦點(diǎn)視圖,可接受軟鍵盤(pán)輸入。
flags 提供額外的操作標(biāo)志。當(dāng)前可以是0或SHOW_IMPLICIT 位設(shè)置。
resultReceiver 如不為空,當(dāng)IME處理請(qǐng)求告訴你完成時(shí)調(diào)用。你收到的結(jié)果碼可以是RESULT_UNCHANGED_SHOWN, RESULT_UNCHANGED_HIDDEN, RESULT_SHOWN, 或 RESULT_HIDDEN 。
public boolean showSoftInput (View view, int flags)
showSoftInput(View, int, ResultReceiver)的無(wú)返回值版:如需要,顯式要求當(dāng)前輸入法的軟鍵盤(pán)區(qū)域向用戶顯示。
參數(shù)
view 當(dāng)前焦點(diǎn)視圖,可接受軟鍵盤(pán)輸入。
flags 提供額外的操作標(biāo)志。當(dāng)前可以是0或SHOW_IMPLICIT 位設(shè)置。
public void showSoftInputFromInputMethod (IBinder token, int flags)
顯示輸入法的軟鍵盤(pán)區(qū)域,這樣用戶可以到看到輸入法窗口并能與其交互。只能由當(dāng)前激活輸入法調(diào)用,因需令牌(token)驗(yàn)證。
參數(shù)
token 在輸入法啟動(dòng)時(shí)提供令牌驗(yàn)證,驗(yàn)證后可對(duì)其進(jìn)行操作。
flags 提供額外的操作標(biāo)志??梢允?或 SHOW_IMPLICIT, SHOW_FORCED位設(shè)置。
public void showStatusIcon (IBinder imeToken, String packageName, int iconId)
?。ㄗg者注:顯示狀態(tài)欄圖標(biāo)?)
public boolean switchToLastInputMethod (IBinder imeToken)
public void toggleSoftInput (int showFlags, int hideFlags)
?。ㄗg者注:切換軟鍵盤(pán))
public void toggleSoftInputFromWindow (IBinder windowToken, int showFlags, int hideFlags)
本方法切換輸入法的窗口顯示。如輸入窗口已顯示,它隱藏。如無(wú)輸入窗口則顯示。
參數(shù)
windowToken 由窗口請(qǐng)求View.getWindowToken()返回得到的令牌(token)。
showFlags 提供額外的操作標(biāo)志。當(dāng)前可以為0或 HIDE_IMPLICIT_ONLY位設(shè)置。
hideFlags 提供額外的操作標(biāo)志??梢允?或 HIDE_IMPLICIT_ONLY, HIDE_NOT_ALWAYS位設(shè)置。
public void updateCursor (View view, int left, int top, int right, int bottom)
返回窗口的當(dāng)前光標(biāo)位置。
public void updateExtractedText (View view, int token, ExtractedText text)
(譯者注:當(dāng)內(nèi)容變化時(shí)文本編輯器調(diào)用此方法,通知其新提取文本。)
public void updateSelection (View view, int selStart, int selEnd, int candidatesStart, int candidatesEnd)
返回當(dāng)前選擇區(qū)域。
android如何調(diào)用顯示和隱藏系統(tǒng)默認(rèn)的輸入法
1.調(diào)用顯示系統(tǒng)默認(rèn)的輸入法
方法一、
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(m_receiverView(接受軟鍵盤(pán)輸入的視圖(View)),InputMethodManager.SHOW_FORCED(提供當(dāng)前操作的標(biāo)記,SHOW_FORCED表示強(qiáng)制顯示));
方法二、
InputMethodManager m=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
m.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); (這個(gè)方法可以實(shí)現(xiàn)輸入法在窗口上切換顯示,如果輸入法在窗口上已經(jīng)顯示,則隱藏,如果隱藏,則顯示輸入法到窗口上)
2.調(diào)用隱藏系統(tǒng)默認(rèn)的輸入法
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); (WidgetSearchActivity是當(dāng)前的Activity)
3.獲取輸入法打開(kāi)的狀態(tài)
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen=imm.isActive();
isOpen若返回true,則表示輸入法打開(kāi)
1、//隱藏軟鍵盤(pán)
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
2、//顯示軟鍵盤(pán),控件ID可以是EditText,TextView
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).showSoftInput(控件ID, 0);
3、不自動(dòng)彈出鍵盤(pán):
帶有EditText控件的在第一次顯示的時(shí)候會(huì)自動(dòng)獲得focus,并彈出鍵盤(pán),如果不想自動(dòng)彈出鍵盤(pán),有兩種方法:
方法一:在mainfest文件中把對(duì)應(yīng)的activity設(shè)置
android:windowSoftInputMode="stateHidden" 或者android:windowSoftInputMode="stateUnchanged"。
方法二:可以在布局中放一個(gè)隱藏的TextView,然后在onCreate的時(shí)候requsetFocus。
注意TextView不要設(shè)置Visiable=gone,否則會(huì)失效
,可以在布局中放一個(gè)隱藏的TextView,然后在onCreate的時(shí)候requsetFocus。
注意TextView不要設(shè)置Visiable=gone,否則會(huì)失效
<TextView
android:id="@+id/text_notuse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true" />
TextView textView = (TextView)findViewById(R.id.text_notuse);
textView.requestFocus();
Android軟鍵盤(pán)學(xué)習(xí)InputMethodManager
當(dāng)我們?cè)贏ndroid提供的EditText中單擊的時(shí)候,會(huì)自動(dòng)的彈出軟鍵盤(pán),其實(shí)對(duì)于軟鍵盤(pán)的控制我們可以通過(guò)InputMethodManager這個(gè)類來(lái)實(shí)現(xiàn)。我們需要控制軟鍵盤(pán)的方式就是兩種一個(gè)是像EditText那樣當(dāng)發(fā)生onClick事件的時(shí)候出現(xiàn)軟鍵盤(pán),還有就是當(dāng)打開(kāi)某個(gè)程序的時(shí)候自動(dòng)的彈出軟鍵盤(pán)。
public class InputMethodManagerTest extends Activity implements OnClickListener{ private Button button; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); LinearLayout layout=new LinearLayout(this); LinearLayout.LayoutParams layoutParams=new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); button=new Button(this); button.setId(123); button.setText("Hello GaoMatrix"); button.setOnClickListener(this); layout.addView(button, layoutParams); setContentView(layout); /** * 用一個(gè)定時(shí)器控制當(dāng)打開(kāi)這個(gè)Activity的時(shí)候就出現(xiàn)軟鍵盤(pán) */ Timer timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { InputMethodManager inputMethodManager=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); } }, 2000); } /** * 當(dāng)單擊事件的時(shí)候觸發(fā)顯示軟鍵盤(pán) */ @Override public void onClick(View v) { InputMethodManager inputMethodManager=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); } }
這個(gè)InputMethodManager類里面的toggleSoftInput方法的API中的解釋是:
This method toggles the input method window display. If the input window is already displayed, it gets hidden. If not the input window will be displayed.
這個(gè)方法在界面上切換輸入法的功能,如果輸入法出于現(xiàn)實(shí)狀態(tài),就將他隱藏,如果處于隱藏狀態(tài),就顯示輸入法。
而對(duì)于第二中方式進(jìn)入Activity就自動(dòng)顯示軟鍵盤(pán),在一個(gè)定時(shí)器中,也就是在一個(gè)線程中執(zhí)行,只不過(guò)是延遲2秒執(zhí)行,原因是在onCreate函數(shù)中Android程序未將屏幕繪制完成。
以上就是本文的全部?jī)?nèi)容,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Android中的windowSoftInputMode屬性詳解
- android 使用uinput模擬輸入設(shè)備的方法
- Android WebView 不支持 H5 input type="file" 解決方法
- Android 數(shù)據(jù)存儲(chǔ)之 FileInputStream 工具類及FileInputStream類的使用
- Android編程開(kāi)發(fā)之EditText中inputType屬性小結(jié)
- Android WebView支持input file啟用相機(jī)/選取照片功能
- Android網(wǎng)頁(yè)H5 Input選擇相機(jī)和系統(tǒng)相冊(cè)
- 詳解Android WebView的input上傳照片的兼容問(wèn)題
- Android自定義PasswordInputView密碼輸入
- 從"Show?tabs"了解Android?Input系統(tǒng)
相關(guān)文章
Android自定義View中attrs.xml的實(shí)例詳解
這篇文章主要介紹了Android自定義View中attrs.xml的實(shí)例詳解的相關(guān)資料,在自定義View首先對(duì)attrs.xml進(jìn)行布局的實(shí)現(xiàn)及屬性的應(yīng)用,需要的朋友可以參考下2017-07-07Android 對(duì)手機(jī)網(wǎng)絡(luò)的檢測(cè)和監(jiān)聽(tīng)的方法示例
本篇文章主要介紹了Android 對(duì)手機(jī)網(wǎng)絡(luò)的檢測(cè)和監(jiān)聽(tīng)的方法示例,主要使用BroadcastReceiver廣播接收器來(lái)接收網(wǎng)絡(luò)狀態(tài),現(xiàn)在分享給大家,也給大家做個(gè)參考,有興趣的一起來(lái)了解一下2018-03-03android實(shí)現(xiàn)自動(dòng)滾動(dòng)的Gallary控件效果
這篇文章主要介紹了android實(shí)現(xiàn)自動(dòng)滾動(dòng)的Gallary控件效果,涉及Android中Gallary控件的相關(guān)使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10Android 下載文件通知欄顯示進(jìn)度條功能的實(shí)例代碼
這篇文章主要介紹了Android 下載文件通知欄顯示進(jìn)度條功能的實(shí)例代碼,通過(guò)使用AsyncTask異步任務(wù)實(shí)現(xiàn),調(diào)用publishProgress()方法刷新進(jìn)度來(lái)實(shí)現(xiàn),具體代碼大家參考下本文2018-04-04Android實(shí)現(xiàn)下載zip壓縮文件并解壓的方法(附源碼)
這篇文章主要給大家介紹了利用Android實(shí)現(xiàn)下載zip壓縮文件并解壓的方法,文中給出了示例代碼并提供了源碼下載,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-02-02Android編程實(shí)現(xiàn)自定義系統(tǒng)菜單背景的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)自定義系統(tǒng)菜單背景的方法,涉及Android菜單menu的實(shí)現(xiàn)及背景圖片的相關(guān)操作技巧,需要的朋友可以參考下2016-01-01