實現圓環進度條,為神馬筆記開源專案
描述ldoublem / ringprogress
a circle progress bar with effect
hotbitmapgg / ringprogressbar
a material design circle the progress bar.類描述
shapedrawable
使用各種shape的drawable。
arcshape
a material design circle the progress bar.
新增了start()
和stop()
介面,使之產生動畫效果。
public
class
rin**iew
extends
view
public
rin**iew
(context context,
@nullable attributeset attrs)
public
rin**iew
(context context,
@nullable attributeset attrs,
int defstyleattr)
public
rin**iew
(context context,
@nullable attributeset attrs,
int defstyleattr,
int defstyleres)
}public
void
setduration
(long duration)
public
void
setprogress
(long progress)
public
void
start()
public
void
stop()
this
.endtime = systemclock.
elapsedrealtime()
;this
.progress +=
(this
.endtime -
this
.starttime)
;this
.isrunning =
false
;this
.invalidate()
;}@override
protected
void
ondraw
(canvas canvas)
if(isrunning)
}void
drawprogress
(canvas canvas)
long total =
this
.duration;
shape.
setsweepangle
(sweepangle);}
}/****/
private
static
class
ringshape
extends
rectshape
/** * @return the angle (in degrees) where the arc begins
*/public
final
float
getstartangle()
public
void
setstartangle
(float startangle)
/** * @return the sweep angle (in degrees)
*/public
final
float
getsweepangle()
public
void
setsweepangle
(float sweepangle)
@override
public
void
draw
(canvas canvas, paint paint)
@override
public
void
getoutline
(outline outline)
@override
public ringshape clone()
throws clonenotsupportedexception
}}
實現圓環的核心**是canvas#drawarc()
方法。
借鑑了arcshape
**,實現ringshape
,並結合shapedrawable
使用。
組合出錄音的recyclerview的viewholder。
繼續完成神馬筆記錄音功能。
須菩提。
若有人言。
如來若來若去。若坐若臥。
是人不解我所說義。
何以故。
如來者。
無所從來。亦無所去。
故名如來。
Android 高仿IOS載入資料時圓形的進度條
本文有material design風格的圓形進度條和5.0以下的進度條兩種,material design風格參考開源的progresswheel,可以根據自己需求修改進度條的布局檔案來實現自己想要的效果,先來看看專案執行的效果 兩種效果的區別只是傳入的布局檔案的id不同,布局檔案的區別就是把pr...
高仿IOS 提示框
乙個簡單的仿ios 對話方塊,感覺很好用 記錄下來 往後可以直接轉移到別的專案中使用。先來看下效果圖 效果簡單明瞭,感覺ios 的對話方塊就要比安卓原生的好看一些,下面附上 public class alertdialog extends dialog public alertdialog cont...
Android 高仿墨跡天氣「我」頁面
實現的效果分三個部分來說明,首先是下拉到最大高度,個人資訊介面會產生乙個回彈的效果,然後是滾動到頂部,個人資訊介面收縮,並且產生登入按鈕會重新出現,黃色的訊息按鈕會平移到最右邊。最後是在這兩種狀態之間,控制項會根據滾動的距離來判斷變換成前面兩種狀態中的一種狀態。首先根據三種狀態切割userinfov...