Android 開發(fā)過程中遇到的坑。。。

1.ListView getChildAt(index),有可能返回null,這是因為這個方法只能返回當(dāng)前屏幕 可視范圍內(nèi)的view,比如屏幕只能容下10個,則getChildAt (0)到getChildAt (9)都是 可用的,大于9就會返回空值。如果我取第10個的話就null了。

2.Fragment getView() 有時可能為空,這是就要看看你調(diào)用的時機(jī)是否正確了,其他操作都正常情況下,調(diào)用時機(jī)一定要在onViewCreate以后才行。

3.WebView要慎用,反復(fù)進(jìn)入退去,內(nèi)存很容易泄露。

4.TextView 設(shè)置尾部省略后,有時會發(fā)現(xiàn)當(dāng)內(nèi)容超出顯示范圍后,直接截斷了,也沒有出現(xiàn)預(yù)期的“”...“”省略號,這時看看內(nèi)容的長度是否恰好比顯示范圍大一個字符,如果是的話,這時是不顯示的。貌似這時系統(tǒng)的一個bug。解決方法:顯示內(nèi)容時,再最末尾加個空格即可。

5.調(diào)試的時候,發(fā)現(xiàn)有的設(shè)備Log.d,debug級別的log無法輸出,確保代碼沒問題情況下,可能是此設(shè)備禁止了debug級別的log輸出,打開即可。各個設(shè)備打開方式不一,自行查找。

6.View的層級不易過多,也不要過度繪制。

7.Android 4.0以后,Manifest中靜態(tài)注冊的廣播,程序安裝后必須啟動過一次,才能接收到。

8.一個AS工程,module不能太多,這樣會影響編譯速度,可以將不是常變動的module打包程aar,主工程依賴aar可以大大提高編譯速度。

9.long類型的變量聲明時最好直接定義好,比如long a = 100l;因為如果不加long類型的后綴,有時有可能會出現(xiàn)負(fù)值。

持續(xù)更新。。。

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

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

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