最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Kotlin實(shí)現(xiàn)半圓形進(jìn)度條的方法示例

 更新時(shí)間:2018年03月31日 11:54:18   作者:BlackFlagBin  
這篇文章主要給大家介紹了關(guān)于Kotlin實(shí)現(xiàn)半圓形進(jìn)度條的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

Kotlin的簡(jiǎn)要介紹

在開發(fā)之前,很多同學(xué)一定有很多疑問(wèn),Kotlin到底有啥好處,怎么和現(xiàn)有的項(xiàng)目共存呢?Java那么些特性Kotlin都有嗎?嗯,讓我們一一來(lái)看。

以下內(nèi)容摘自:Kotlin的官方網(wǎng)站:https://www.kotlincn.net/docs/reference/android-overview.html

Kotlin 非常適合開發(fā) Android 應(yīng)用程序,將現(xiàn)代語(yǔ)言的所有優(yōu)勢(shì)帶入 Android 平臺(tái)而不會(huì)引入任何新的限制:

  • 兼容性:Kotlin 與 JDK 6 完全兼容,保障了 Kotlin 應(yīng)用程序可以在較舊的 Android 設(shè)備上運(yùn)行而無(wú)任何問(wèn)題。Kotlin 工具在 Android Studio 中會(huì)完全支持,并且兼容 Android 構(gòu)建系統(tǒng)。
  • 性能:由于非常相似的字節(jié)碼結(jié)構(gòu),Kotlin 應(yīng)用程序的運(yùn)行速度與 Java 類似。 隨著 Kotlin 對(duì)內(nèi)聯(lián)函數(shù)的支持,使用 lambda 表達(dá)式的代碼通常比用 Java 寫的代碼運(yùn)行得更快。
  • 互操作性:Kotlin 可與 Java 進(jìn)行 100% 的互操作,允許在 Kotlin 應(yīng)用程序中使用所有現(xiàn)有的 Android 庫(kù) 。這包括注解處理,所以數(shù)據(jù)綁定和 Dagger 也是一樣。
  • 占用:Kotlin 具有非常緊湊的運(yùn)行時(shí)庫(kù),可以通過(guò)使用 ProGuard 進(jìn)一步減少。 在實(shí)際應(yīng)用程序中,Kotlin 運(yùn)行時(shí) 只增加幾百個(gè)方法以及 .apk 文件不到 100K 大小。
  • 編譯時(shí)長(zhǎng):Kotlin 支持高效的增量編譯,所以對(duì)于 清理構(gòu)建會(huì)有額外的開銷,增量構(gòu)建通常與 Java 一樣快或者更快。
  • 學(xué)習(xí)曲線:對(duì)于 Java 開發(fā)人員,Kotlin 入門很容易。包含在 Kotlin 插件中的自動(dòng) Java 到 Kotlin 的轉(zhuǎn)換器 有助于邁出第一步。Kotlin 心印 通過(guò)一系列互動(dòng)練習(xí)提供了語(yǔ)言主要功能的指南。

使用Kotlin編寫的半圓形的進(jìn)度條,效果如下

方法如下

導(dǎo)入依賴

compile 'com.blackflagbin:semicircleprogressview:0.0.3'

在布局文件中

<!--angle 每條短線之間間隔角度-->
<!--progress 進(jìn)度-->
<!--showProgressText 是否顯示進(jìn)度文字-->
<!--strokeWidth 每條短線的寬度(粗細(xì))-->
<com.blackflagbin.semicircleprogressview.SemiCircleProgressView
  android:id="@+id/progress"
  android:layout_width="300dp"
  android:layout_height="wrap_content"
  android:layout_centerHorizontal="true"
  android:layout_marginTop="50dp"
  app:angle="3"
  app:progress="13"
  app:showProgressText="true"
  app:strokeWidth="3"/>

在代碼中

//設(shè)置進(jìn)度
progress.setProgress(3f)
//獲取進(jìn)度
val progress = progress.getProgress()
//更新進(jìn)度
progress.updateProgress(75f)

如果想要自定義進(jìn)度文字實(shí)現(xiàn)gif演示圖中第二個(gè)進(jìn)度條中的類似的文字效果,可以參考庫(kù)中的MySemiCircleProgressView

//覆寫此方法以實(shí)現(xiàn)自定義進(jìn)度文字,height代表控件的高度
drawProgressText(canvas: Canvas,height:Float)

Github地址

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論

铜陵市| 洪雅县| 历史| 禹城市| 临沂市| 房山区| 南通市| 扎兰屯市| 内黄县| 土默特右旗| 长白| 天等县| 肇州县| 荆州市| 沁源县| 清涧县| 云安县| 调兵山市| 葫芦岛市| 汤阴县| 民丰县| 济阳县| 班戈县| 彭泽县| 博湖县| 霍林郭勒市| 张家界市| 延寿县| 南充市| 临汾市| 满洲里市| 乌兰察布市| 名山县| 晋州市| 汝州市| 罗定市| 水富县| 藁城市| 旬阳县| 平陆县| 永清县|