Android開發(fā)中常用的一些小技巧
Activity.startActivities() 常用于在應(yīng)用程序中間啟動(dòng)其他的Activity.
TextUtils.isEmpty() 簡(jiǎn)單的工具類,用于檢測(cè)是否為空
Html.fromHtml() 用于生成一個(gè)Html,參數(shù)可以是一個(gè)字符串.個(gè)人認(rèn)為它不是很快,所以我不怎么經(jīng)常去用.(我說不經(jīng)常用它是為了重點(diǎn)突出這句話:請(qǐng)多手動(dòng)構(gòu)建 Spannable 來替換 Html.fromHtml),但是它對(duì)渲染從 web 上獲取的文字還是很不錯(cuò)的。
TextView.setError() 在驗(yàn)證用戶輸入的時(shí)候很棒
Build.VERSION_CODES 這個(gè)標(biāo)明了當(dāng)前的版本號(hào),在處理兼容性問題的時(shí)候經(jīng)常會(huì)用到.點(diǎn)進(jìn)去可以看到各個(gè)版本的不同特性
Log.getStackTraceString() 方便的日志類工具,方法Log.v()、Log.d()、Log.i()、Log.w()和Log.e()都是將信息打印到LogCat中,有時(shí)候需要將出錯(cuò)的信息插入到數(shù)據(jù)庫或一個(gè)自定義的日志文件中,那么這種情況就需要將出錯(cuò)的信息以字符串的形式返回來,也就是使用static String getStackTraceString(Throwable tr)方法的時(shí)候.
LayoutInflater.from() 顧名思義,用于Inflate一個(gè)layout,參數(shù)是layout的id.這個(gè)經(jīng)常寫Adapter的人會(huì)用的比較多.
ViewConfiguration.getScaledTouchSlop() 使用 ViewConfiguration 中提供的值以保證所有觸摸的交互都是統(tǒng)一的。這個(gè)方法獲取的值表示:用戶的手滑動(dòng)這個(gè)距離后,才判定為正在進(jìn)行滑動(dòng).當(dāng)然這個(gè)值也可以自己來決定.但是為了一致性,還是使用標(biāo)準(zhǔn)的值較好.
PhoneNumberUtils.convertKeypadLettersToDigits 顧名思義.將字母轉(zhuǎn)換為數(shù)字,類似于T9輸入法,
Context.getCacheDir() 獲取緩存數(shù)據(jù)文件夾的路徑,很簡(jiǎn)單但是知道的人不多,這個(gè)路徑通常在SD卡上(這里的SD卡指的是廣義上的SD卡,包括外部存儲(chǔ)和內(nèi)部存儲(chǔ))Adnroid/data/您的應(yīng)用程序包名/cache/ 下面.測(cè)試的時(shí)候,可以去這里面看是否緩存成功.緩存在這里的好處是:不用自己再去手動(dòng)創(chuàng)建文件夾,不用擔(dān)心用戶把自己創(chuàng)建的文件夾刪掉,在應(yīng)用程序卸載的時(shí)候,這里會(huì)被清空,使用第三方的清理工具的時(shí)候,這里也會(huì)被清空.
ArgbEvaluator 用于處理顏色的漸變。就像 Chris Banes 說的一樣,這個(gè)類會(huì)進(jìn)行很多自動(dòng)裝箱的操作,所以最好還是去掉它的邏輯自己去實(shí)現(xiàn)它。這個(gè)沒用過,不明其所以然,回頭再補(bǔ)充.
ContextThemeWrapper 方便在運(yùn)行的時(shí)候修改主題.
Space space是Android 4.0中新增的一個(gè)控件,它實(shí)際上可以用來分隔不同的控件,其中形成一個(gè)空白的區(qū)域.這是一個(gè)輕量級(jí)的視圖組件,它可以跳過Draw,對(duì)于需要占位符的任何場(chǎng)景來說都是很棒的。
ValueAnimator.reverse() 這個(gè)方法可以很順利地取消正在運(yùn)行的動(dòng)畫.我超喜歡.
DateUtils.formatDateTime() 用來進(jìn)行區(qū)域格式化工作,輸出格式化和本地化的時(shí)間或者日期。
AlarmManager.setInexactRepeating 通過鬧鈴分組的方式省電,即使你只調(diào)用了一個(gè)鬧鐘,這也是一個(gè)好的選擇,(可以確保在使用完畢時(shí)自動(dòng)調(diào)用 AlarmManager.cancel ()。原文說的比較抽象,這里詳細(xì)說一下:setInexactRepeating指的是設(shè)置非準(zhǔn)確鬧鐘,使用方法:alarmManager.setInexactRepeating(AlarmManager.RTC, startTime,intervalL, pendingIntent),非準(zhǔn)確鬧鐘只能保證大致的時(shí)間間隔,但是不一定準(zhǔn)確,可能出現(xiàn)設(shè)置間隔為30分鐘,但是實(shí)際上一次間隔20分鐘,另一次間隔40分鐘。它的最大的好處是可以合并鬧鐘事件,比如間隔設(shè)置每30分鐘一次,不喚醒休眠,在休眠8小時(shí)后已經(jīng)積累了16個(gè)鬧鐘事件,而在手機(jī)被喚醒的時(shí)候,非準(zhǔn)時(shí)鬧鐘可以把16個(gè)事件合并為一個(gè), 所以這么看來,非準(zhǔn)時(shí)鬧鐘一般來說比較節(jié)約能源。
Formatter.formatFileSize() 一個(gè)區(qū)域化的文件大小格式化工具。通俗來說就是把大小轉(zhuǎn)換為MB,G,KB之類的字符串。
ActionBar.hide()/.show() 顧名思義,隱藏和顯示ActionBar,可以優(yōu)雅地在全屏和帶Actionbar之間轉(zhuǎn)換。
Linkify.addLinks() 在Text上添加鏈接。很實(shí)用。
StaticLayout 在自定義 View 中渲染文字的時(shí)候很實(shí)用。
Activity.onBackPressed() 很方便的管理back鍵的方法,有時(shí)候需要自己控制返回鍵的事件的時(shí)候,可以重寫一下。比如加入 “點(diǎn)兩下back鍵退出” 功能。
GestureDetector 用來監(jiān)聽和相應(yīng)對(duì)應(yīng)的手勢(shì)事件,比如點(diǎn)擊,長(zhǎng)按,慢滑動(dòng),快滑動(dòng),用起來很簡(jiǎn)單,比你自己實(shí)現(xiàn)要方便許多。
DrawFilter 可以讓你在不調(diào)用onDrew方法的情況下,操作canvas,比了個(gè)如,你可以在創(chuàng)建自定義 View 的時(shí)候設(shè)置一個(gè) DrawFilter,給父 View 里面的所有 View 設(shè)置反別名。
ActivityManager.getMemoryClass() 告訴你你的機(jī)器還有多少內(nèi)存,在計(jì)算緩存大小的時(shí)候會(huì)比較有用.
ViewStub 它是一個(gè)初始化不做任何事情的 View,但是之后可以載入一個(gè)布局文件。在慢加載 View 中很適合做占位符。唯一的缺點(diǎn)就是不支持標(biāo)簽,所以如果你不太小心的話,可能會(huì)在視圖結(jié)構(gòu)中加入不需要的嵌套。
SystemClock.sleep() 這個(gè)方法在保證一定時(shí)間的 sleep 時(shí)很方便,通常我用來進(jìn)行 debug 和模擬網(wǎng)絡(luò)延時(shí)。
DisplayMetrics.density 這個(gè)方法你可以獲取設(shè)備像素密度,大部分時(shí)候最好讓系統(tǒng)來自動(dòng)進(jìn)行縮放資源之類的操作,但是有時(shí)候控制的效果會(huì)更好一些.(尤其是在自定義View的時(shí)候).
Pair.create() 方便構(gòu)建類和構(gòu)造器的方法。
- Android編程之文件讀寫操作與技巧總結(jié)【經(jīng)典收藏】
- Android編程之OpenGL繪圖技巧總結(jié)
- Android編程常用技巧實(shí)例總結(jié)
- Android編程開發(fā)之性能優(yōu)化技巧總結(jié)
- Android Studio使用小技巧:提取方法代碼片段
- Android Studio使用小技巧:自定義Logcat
- Android開發(fā)技巧之我的菜單我做主(自定義菜單)
- 解析Android開發(fā)優(yōu)化之:從代碼角度進(jìn)行優(yōu)化的技巧
- android 為應(yīng)用程序創(chuàng)建桌面快捷方式技巧分享
- Android開發(fā)技巧之像QQ一樣輸入文字和表情圖像
- Android Studio使用小技巧:布局預(yù)覽時(shí)填充數(shù)據(jù)
- Android實(shí)用編程技巧代碼總結(jié)
相關(guān)文章
Android local.properties 文件讀取實(shí)例詳解
這篇文章主要介紹了Android local.properties 文件讀取實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05
Android Mouse實(shí)現(xiàn)過程詳細(xì)筆記
鼠標(biāo)的實(shí)現(xiàn)有兩個(gè)步驟,一個(gè)是所有層上面的一個(gè)圖標(biāo),還有一個(gè)就是事件控制2013-09-09
Android 添加TextView刪除線(代碼簡(jiǎn)單)
最近接了個(gè)項(xiàng)目,其中有項(xiàng)目需求是這樣的,有這么個(gè)需求,就是一個(gè)產(chǎn)品下有兩個(gè)價(jià)格,一個(gè)是市場(chǎng)價(jià),一個(gè)是銷售價(jià),這時(shí)要把市場(chǎng)價(jià)添加個(gè)刪除線;怎么實(shí)現(xiàn)呢?下面小編給大家分享一段簡(jiǎn)單的代碼實(shí)現(xiàn)Android 添加TextView刪除線2016-02-02
android實(shí)現(xiàn)加載動(dòng)畫對(duì)話框
這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)加載動(dòng)畫對(duì)話框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-10-10
Android自定義RecyclerView Item頭部懸浮吸頂
這篇文章主要為大家詳細(xì)介紹了Android自定義RecyclerView Item頭部懸浮吸頂,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
Android登錄注冊(cè)功能 數(shù)據(jù)庫SQLite驗(yàn)證
這篇文章主要為大家詳細(xì)介紹了Android登錄注冊(cè)功能,數(shù)據(jù)庫SQLite驗(yàn)證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10

