偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Android開(kāi)發(fā)中,那些讓你相見(jiàn)恨晚的方法、類或接口

移動(dòng)開(kāi)發(fā) Android
本文內(nèi)容來(lái)自我在知乎上對(duì)Android開(kāi)發(fā)中,有哪些讓你覺(jué)得相見(jiàn)恨晚的方法、類或接口?這一問(wèn)題的回答,目前就總結(jié)這些,日后若有新的發(fā)現(xiàn),隨時(shí)補(bǔ)充。

PS:本文內(nèi)容來(lái)自我在知乎上對(duì)Android開(kāi)發(fā)中,有哪些讓你覺(jué)得相見(jiàn)恨晚的方法、類或接口?這一問(wèn)題的回答,目前就總結(jié)這些,日后若有新的發(fā)現(xiàn),隨時(shí)補(bǔ)充。歡淫點(diǎn)贊。

[[178549]]

  • getParent().requestDisallowInterceptTouchEvent(true);剝奪父view 對(duì)touch 事件的處理權(quán),誰(shuí)用誰(shuí)知道。
  • ArgbEvaluator.evaluate(float fraction, Object startValue, Object endValue); 用于根據(jù)一個(gè)起始顏色值和一個(gè)結(jié)束顏色值以及一個(gè)偏移量生成一個(gè)新的顏色,分分鐘實(shí)現(xiàn)類似于微信底部欄滑動(dòng)顏色漸變。
  • Canvas中clipRect、clipPath和clipRegion 剪切區(qū)域的API。
  • Bitmap.extractAlpha ();返回一個(gè)新的Bitmap,capture原始圖片的alpha 值。有的時(shí)候我們需要?jiǎng)討B(tài)的修改一個(gè)元素的背景圖片又不希望使用多張圖片的時(shí)候,通過(guò)這個(gè)方法,結(jié)合Canvas 和Paint 可以動(dòng)態(tài)的修改一個(gè)純色Bitmap的顏色。
  • HandlerThread,代替不停new Thread 開(kāi)子線程的重復(fù)體力寫(xiě)法。
  • IntentService,一個(gè)可以干完活后自己去死且不需要我們?nèi)ス芾碜泳€程的Service。
  • Palette,5.0加入的可以提取一個(gè)Bitmap 中突出顏色的類,結(jié)合上面的Bitmap.extractAlpha,你懂的。
  • Executors. newSingleThreadExecutor();這個(gè)是java 的,之前不知道它,自己花很大功夫去研究了單線程順序執(zhí)行的任務(wù)隊(duì)列。。
  • android:animateLayoutChanges=”true”,LinearLayout中添加View 的動(dòng)畫(huà)的辦法,支持通過(guò)setLayoutTransition()自定義動(dòng)畫(huà)。
  • ViewDragHelper,自定義一個(gè)子View可拖拽的ViewGroup 時(shí),處理各種事件很累吧,嗯? what the fuck!!
  • GradientDrawable,之前接手公司的項(xiàng)目,發(fā)現(xiàn)有個(gè)陰影效果還不錯(cuò),以為是切的圖片,一看代碼,什么鬼= =!
  • AsyncQueryHandler,如果做系統(tǒng)工具類的開(kāi)發(fā),比如聯(lián)系人短信輔助工具等,肯定免不了和ContentProvider打交道,如果數(shù)據(jù)量不是很大的情況下,隨便搞,如果數(shù)據(jù)量大的情況下,了解下這個(gè)類是很有必要的,需要注意的是,這玩意兒吃異常..
  • ViewFlipper,實(shí)現(xiàn)多個(gè)view的切換(循環(huán)),可自定義動(dòng)畫(huà)效果,且可針對(duì)單個(gè)切換指定動(dòng)畫(huà)。
  • 有朋友提到了在自定義View時(shí)有些方法在開(kāi)啟硬件加速的時(shí)候沒(méi)有效果的問(wèn)題,在API16之后確實(shí)有很多方法不支持硬件加速,通常我們關(guān)閉硬件加速都是在清單文件中通過(guò),其實(shí)android也提供了針對(duì)特定View關(guān)閉硬件加速的方法,調(diào)用View.setLayerType(View.LAYER_TYPE_SOFTWARE, null);即可。
  • android util包中的Pair類,可以方便的用來(lái)存儲(chǔ)一”組”數(shù)據(jù)。注意不是key value。
  • PointF,graphics包中的一個(gè)類,我們經(jīng)常見(jiàn)到在處理Touch事件的時(shí)候分別定義一個(gè)downX,一個(gè)downY用來(lái)存儲(chǔ)一個(gè)坐標(biāo),如果坐標(biāo)少還好,如果要記錄的坐標(biāo)過(guò)多那代碼就不好看了。用PointF(float x, float y);來(lái)描述一個(gè)坐標(biāo)點(diǎn)會(huì)清楚很多。
  • StateListDrawable,定義Selector通常的辦法都是xml文件,但是有的時(shí)候我們的圖片資源可能是從服務(wù)器動(dòng)態(tài)獲取的,比如很多app所謂的皮膚,這種時(shí)候就只能通StateListDrawable
  • 來(lái)完成了,各種addState即可。
  • android:descendantFocusability,ListView的item中CheckBox等元素?fù)尳裹c(diǎn)導(dǎo)致item點(diǎn)擊事件無(wú)法響應(yīng)時(shí),除了給對(duì)應(yīng)的元素設(shè)置 focusable,更簡(jiǎn)單的是在item根布局加上android:descendantFocusability=”blocksDescendants”
  • android:duplicateParentState=”true”,讓子View跟隨其Parent的狀態(tài),如pressed等。常見(jiàn)的使用場(chǎng)景是某些時(shí)候一個(gè)按鈕很小,我們想要擴(kuò)大其點(diǎn)擊區(qū)域的時(shí)候通常會(huì)再給其包裹一層布局,將點(diǎn)擊事件寫(xiě)到Parent上,這時(shí)候如果希望被包裹按鈕的點(diǎn)擊效果對(duì)應(yīng)的Selector繼續(xù)生效的話,這時(shí)候duplicateParentState就派上用場(chǎng)了。
  • includeFontPadding=”false”,TextView默認(rèn)上下是有一定的padding的,有時(shí)候我們可能不需要上下這部分留白,加上它即可。
  • Messenger,面試的時(shí)候通常都會(huì)被問(wèn)到進(jìn)程間通信,一般情況下大家都是開(kāi)始背書(shū),AIDL巴拉巴拉。。有一天在鴻神的博客看到這個(gè),嗯,如他所說(shuō),又可以裝一下了。
  • TextView.setError();用于驗(yàn)證用戶輸入。
  • ViewConfiguration.getScaledTouchSlop();觸發(fā)移動(dòng)事件的最小距離,自定義View處理touch事件的時(shí)候,有的時(shí)候需要判斷用戶是否真的存在movie,系統(tǒng)提供了這樣的方法。
  • ValueAnimator.reverse(); 順暢的取消動(dòng)畫(huà)效果。
  • ViewStub,有的時(shí)候一塊區(qū)域需要根據(jù)情況顯示不同的布局,通常我們都會(huì)通過(guò)setVisibility的方法來(lái)顯示和隱藏不同的布局,但是這樣默認(rèn)是全部加載的,用ViewStub可以更好的提升性能。
  • onTrimMemory,在Activity中重寫(xiě)此方法,會(huì)在內(nèi)存緊張的時(shí)候回調(diào)(支持多個(gè)級(jí)別),便于我們主動(dòng)的進(jìn)行資源釋放,避免OOM。
  • EditTxt.setImeOptions, 使用EditText彈出軟鍵盤(pán)時(shí),修改回車鍵的顯示內(nèi)容(一直很討厭用回車鍵來(lái)交互,所以之前一直不知道這玩意兒)
  • TextView.setCompoundDrawablePadding,代碼設(shè)置TextView的drawable padding。
  • ImageSwitcher,可以用來(lái)做圖片切換的一個(gè)類,類似于幻燈片。
  • WeakHashMap,直接使用HashMap有時(shí)候會(huì)帶來(lái)內(nèi)存溢出的風(fēng)險(xiǎn),使用WaekHashMap實(shí)例化Map。當(dāng)使用者不再有對(duì)象引用的時(shí)候,WeakHashMap將自動(dòng)被移除對(duì)應(yīng)Key值的對(duì)象。 
責(zé)任編輯:龐桂玉 來(lái)源: 安卓開(kāi)發(fā)精選
相關(guān)推薦

2021-04-14 09:22:18

Python技巧交換變量值

2024-01-29 00:51:39

前端開(kāi)發(fā)利器

2015-07-14 14:09:56

2015-10-27 10:12:21

r語(yǔ)言命令相見(jiàn)恨晚

2021-09-28 14:40:03

Python內(nèi)置庫(kù)itertools

2020-05-07 09:02:55

代碼Python開(kāi)發(fā)

2020-04-01 14:16:05

Pandastips數(shù)據(jù)分析

2018-02-07 14:54:17

Riverbed應(yīng)用性能管理數(shù)字體驗(yàn)

2018-01-25 14:53:20

iPhone技巧刪除照片

2021-04-20 10:47:59

手機(jī)APP科技

2020-05-06 09:18:56

Pandas函數(shù)大數(shù)據(jù)技術(shù)

2020-11-23 21:23:34

辦公

2017-06-01 09:34:55

R語(yǔ)言包sqldf

2009-02-20 13:12:23

unixSolaris初學(xué)者

2024-08-20 14:25:20

2021-08-19 15:02:32

科技軟件電腦

2024-08-22 08:57:32

Python技巧參數(shù)

2019-12-02 10:16:45

Linux 開(kāi)源操作系統(tǒng)

2019-08-09 14:13:22

Python知乎程序員

2019-08-29 09:10:11

Linux命令編程語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)