最新国产好看的视频,伊人天堂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)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。

Kotlin的簡(jiǎn)要介紹

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

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

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

  • 兼容性:Kotlin 與 JDK 6 完全兼容,保障了 Kotlin 應(yīng)用程序可以在較舊的 Android 設(shè)備上運(yù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ù),可以通過使用 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 心印 通過一系列互動(dòng)練習(xí)提供了語言主要功能的指南。

使用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à)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論

巴林左旗| 宜阳县| 恩平市| 高尔夫| 丹阳市| 深州市| 南汇区| 阳山县| 微博| 绥芬河市| 深水埗区| 西和县| 茌平县| 六枝特区| 平潭县| 鄂州市| 余江县| 麦盖提县| 海丰县| 茌平县| 刚察县| 张家界市| 图们市| 渭南市| 嘉定区| 绥江县| 夏河县| 天峨县| 宁河县| 海原县| 承德县| 涞源县| 周口市| 博罗县| 明水县| 柘荣县| 五原县| 鸡泽县| 德保县| 西乌珠穆沁旗| 雷波县|