原创 Recycleview 滑動時shape背景殘留細線解決方案

引言 相信開發中經常使用到shape實現一些簡單的形狀或背景,筆者在實踐中就遇到這麼一個問題:在列表中使用shape制定圓角矩形背景,滑動列表,發現當shape滑動到列表頂部邊界處出現明顯抖動,且滑過之後shape在頂部殘留了一條等寬同顏

原创 Java中數組下標爲什麼從0開始而不是1?

數組特性 數組的一大特性:隨機訪問,這個在實際開發中大家也經常使用到。 數組地址 如何理解隨機訪問?假設有個數組int a[10],它的起始地址值爲0x1000(address),那麼當你訪問第n個數據時(即a[n]),實際上是通過其地址

原创 IndexOutOfBoundsException: setSpan (-1 ... -1) starts before 0

情景 測試沒有問題,上線後再統計平臺捕獲到相關異常如下: java.lang.IndexOutOfBoundsException: setSpan (-1 ... -1) starts before 0 at android.text

原创 Android 自定義球型水波紋,帶圓弧進度

需求 如下,實現一個圓形水波紋,帶進度,兩層水波紋需要漸變顯示,且外圍有一個圓弧進度。 思路 外圍圓弧進度:可以通過canvas.drawArc()實現。由於圓弧需要實現漸變,可以通過給畫筆設置shader(SweepGradient)

原创 Android自定義密碼框

需求 如下圖,實現一個密碼框,輸入時顯示實心圓。 思路 基於Edittext實現密碼框,動態計算整體控件寬高,繪製方框格以及實心圓,根據輸入的文本長度填充對應個數的實心圓。 注意點:需要重寫onSelectionChanged()方法,

原创 Annotation註解實現startActivity

前言 這段時間看公司項目涉及到註解,就抽時間學習了一下。查閱資料中,發現Benny老師的講解非常到位,看完視頻後根據印象仿寫一個註解實現startActivity並傳遞參數、解析參數。附: Benny老師的教學視頻地址:https://w

原创 Android藍牙BLE4.0踩過的坑

一直都負責項目的藍牙模塊,期間踩過很多坑,說出來跟大家分享一下。 1. 從簡單的開始,首先是權限的問題,在Android6.0以上,部分機型需要開啓定位權限,部分機型需要同時開啓GPS。所以使用藍牙之前,你可以動態申請定位權限,或者直接將