Android Tips 1

前言

本文是一篇譯文,這篇是這個(gè)系列的第一篇.講述的是Android開(kāi)發(fā)中遇到的一些好用的小技巧,或者一些實(shí)用的API,很多人都知道,但也有人不知道,記錄下來(lái),如果能幫助到大家,也是極好的.由于不是嚴(yán)格的博文,所以翻譯也不那么嚴(yán)格,有些工具和類(lèi)我也會(huì)經(jīng)常用,所以我會(huì)根據(jù)自己的想法去寫(xiě).有些地方坐在并沒(méi)有將這個(gè)工具的作用講出來(lái),我會(huì)補(bǔ)充上去.

正文

Activity.startActivities() 常用于在應(yīng)用程序中間啟動(dòng)其他的Activity.

TextUtils.isEmpty() 簡(jiǎn)單的工具類(lèi),用于檢測(cè)是否為空

Html.fromHtml() 用于生成一個(gè)Html,參數(shù)可以是一個(gè)字符串.個(gè)人認(rèn)為它不是很快,所以我不怎么經(jīng)常去用.(我說(shuō)不經(jīng)常用它是為了重點(diǎn)突出這句話:請(qǐng)多手動(dòng)構(gòu)建 Spannable 來(lái)替換 Html.fromHtml),但是它對(duì)渲染從 web 上獲取的文字還是很不錯(cuò)的。

TextView.setError() 在驗(yàn)證用戶(hù)輸入的時(shí)候很棒

Build.VERSION_CODES 這個(gè)標(biāo)明了當(dāng)前的版本號(hào),在處理兼容性問(wèn)題的時(shí)候經(jīng)常會(huì)用到.點(diǎn)進(jìn)去可以看到各個(gè)版本的不同特性

Log.getStackTraceString() 方便的日志類(lèi)工具,方法Log.v()、Log.d()、Log.i()、Log.w()和Log.e()都是將信息打印到LogCat中,有時(shí)候需要將出錯(cuò)的信息插入到數(shù)據(jù)庫(kù)或一個(gè)自定義的日志文件中,那么這種情況就需要將出錯(cuò)的信息以字符串的形式返回來(lái),也就是使用static String getStackTraceString(Throwable tr)方法的時(shí)候.

LayoutInflater.from() 顧名思義,用于Inflate一個(gè)layout,參數(shù)是layout的id.這個(gè)經(jīng)常寫(xiě)Adapter的人會(huì)用的比較多.

ViewConfiguration.getScaledTouchSlop() 使用 ViewConfiguration 中提供的值以保證所有觸摸的交互都是統(tǒng)一的。這個(gè)方法獲取的值表示:用戶(hù)的手滑動(dòng)這個(gè)距離后,才判定為正在進(jìn)行滑動(dòng).當(dāng)然這個(gè)值也可以自己來(lái)決定.但是為了一致性,還是使用標(biāo)準(zhǔn)的值較好.

PhoneNumberUtils.convertKeypadLettersToDigits 顧名思義.將字母轉(zhuǎn)換為數(shù)字,類(lèi)似于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)心用戶(hù)把自己創(chuàng)建的文件夾刪掉,在應(yīng)用程序卸載的時(shí)候,這里會(huì)被清空,使用第三方的清理工具的時(shí)候,這里也會(huì)被清空.

ArgbEvaluator 用于處理顏色的漸變。就像 Chris Banes 說(shuō)的一樣,這個(gè)類(lèi)會(huì)進(jìn)行很多自動(dòng)裝箱的操作,所以最好還是去掉它的邏輯自己去實(shí)現(xiàn)它。這個(gè)沒(méi)用過(guò),不明其所以然,回頭再補(bǔ)充.

ContextThemeWrapper 方便在運(yùn)行的時(shí)候修改主題.

Space space是Android 4.0中新增的一個(gè)控件,它實(shí)際上可以用來(lái)分隔不同的控件,其中形成一個(gè)空白的區(qū)域.這是一個(gè)輕量級(jí)的視圖組件,它可以跳過(guò)Draw,對(duì)于需要占位符的任何場(chǎng)景來(lái)說(shuō)都是很棒的。

ValueAnimator.reverse() 這個(gè)方法可以很順利地取消正在運(yùn)行的動(dòng)畫(huà).我超喜歡.

備忘

More: Part1 , Part2 , Part3 , Part4, Part5
原文地址:http://blog.danlew.net/2014/03/30/android-tips-round-up-part-1/
原文作者:http://blog.danlew.net/about/
本文地址:http://www.androidperformance.com/android-tips-round-up-1.html 轉(zhuǎn)載請(qǐng)注明.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,781評(píng)論 25 709
  • 去除重復(fù)庫(kù)的引入 去除依賴(lài)庫(kù)中的引入 去除 module a中關(guān)于b、c的引入,而使用當(dāng)前project的依賴(lài) F...
    alighters閱讀 911評(píng)論 0 0
  • 太長(zhǎng)了,還是轉(zhuǎn)載吧...今天在看博客的時(shí)候,無(wú)意中發(fā)現(xiàn)了@Trinea在GitHub上的一個(gè)項(xiàng)目Android開(kāi)源...
    龐哈哈哈12138閱讀 20,383評(píng)論 3 283
  • 身邊是什么樣的人 也會(huì)感染著你成為什么樣的人 積極樂(lè)觀的朋友總會(huì)讓我的生活更加的積極向上 我喜歡正能量的
    山而先生閱讀 155評(píng)論 0 0
  • 一 10年前,他17,她16,他比她大半歲。 他們倆,一個(gè)高中,一個(gè)班級(jí),一張桌子。 她長(zhǎng)得漂亮,眼珠子忽閃忽閃的...
    遇見(jiàn)禾禾閱讀 850評(píng)論 3 6

友情鏈接更多精彩內(nèi)容