kivyMDチュートリアル其の弍什肆 Components - Progress Bar篇


おはこんばんは。いかがお過ごしでしょうか。
いつの間にか梅雨入りしていることが最近分かったのですが、影響もあり体の方も絶不調な
投稿者であります。なんかこれ投稿しているときにずっと体調よくないとか言ってる気も・・・
みなさんも、体調にはお気をつけくださいませ(おせっかいがすぎる)。

最近、Flutterの方を触っているとFirebaseというSaasでもない、かといってPaasでも
ないmBaasというサービスがよく目に入るようになりました。Qiitaでもよく記事にされて
いるのを見かけたりしますよね。なんか調べると認証やDBなど肩代わりしてもらうとあるでは
ないですか。

これは対抗製品と謳っているKivyMDでも目が離せないですね。少し触っただけですが、結構
触れやすいこともあり、気が向けば記事にしようかなと考えている次第であります。乞うご期待
のほどを。

こういうのがあるとありがたいですね。ただただ、リストを表示しただけのアプリよりかは
こういう実戦形式のアプリを作ったほうがやりがいがありますし、色々学べることもありで。
まぁ、でもまずはこちらのComponentsを片付けて合間を見てアプリを作るかしないと何も
始まりません。

ちょっと前置きも長くなってきたので、さっそく今週も始めていきましょう。
今日はProgress Bar篇になります。

Progress Bar

恒例行事ですが、リンクの方は飛ばします。

こちらのコンポーネントはスマホアプリを触っていると、見たことがないという方の方が
少ないように思えるくらいです。タスクの進捗バーだったり、ちょっと待てよ(誰かのモノ
マネ風に)という意味合いの円形の動くアイコンのようなものだったり様々あります。

マニュアルの方でも以下の3つ用意しているよという記載がありますね。

  • MDProgressBar
  • Determinate
  • Indeterminate

残念ながら今日は、動かない関係でMDProgressBarしかお見せできませんが、さっそく
実物を見てみることとします。まずはコードから。

MDProgressBar

xxiv/progressbar.py
from kivy.lang import Builder

from kivymd.app import MDApp

KV = '''
BoxLayout:
    padding: "10dp"

    MDProgressBar:
        #orientation: "vertical"
        #color: app.theme_cls.accent_color
        value: 50
'''


class Test(MDApp):
    def build(self):
        return Builder.load_string(KV)


Test().run()

これも申し訳ありませんが、コードは以上になります・・
Barを自動で変更することはできるかなとか結構調査をしていたのですが、なかなか上手く
いかずで・・結果、時間切れとなってしまいました。
# 誰か知っている方がいればコメントください!

今日に関しては過去1番可読性・視認性が優れているといっても過言ではないくらい、触れる
までもないくらいですが一応触れておきます。

MDProgressBar:
    #orientation: "vertical"
    #color: app.theme_cls.accent_color
    value: 50

コメントアウトしたものは「Vertical orientation」と「With custom color」を
それぞれ実装したものになります。このままだとどちらも有効化してないんですけどね。
ごくごく簡単。なにも変更なければvalueプロパティを指定するのみです。

結果

はい、さくっと結果に移りますがどうなったかを見てみましょう。
# といってもなんの変哲もありませんが

んー、つまらない・・
ただただ実行したのみになります。まぁ動いていることは確かですが。

ちなみにコメントアウトを外して実行したものが上のキャプチャになります。
これも問題なさそうですね。

まとめ

はい、後の方は動かないので今日はここまでとなります。
動的なものも試してみたかったのですが、今後の期待ということで。
Changelogに改善したという文言がなかったので、バージョンを上げたとしても改善されない
かもしれませんが・・

ということでこのままではあまり使用用途がないかもしれませんが、もし全ての機能が使える
ようになったらアプリの幅や豊かさが上がるのは間違いありません。現状では、少し首を長く
して待っていましょう。

来週の予定では前回飛ばしていたRefreshLayout篇をやることにします。味気がない結果と
なりましたが、勝手ながら今日はここまでとします。

それでは、ごきげんよう。

参照

Components » Progress Bar
https://kivymd.readthedocs.io/en/latest/components/progress-bar/

Wikipedia - Firebase
https://ja.wikipedia.org/wiki/Firebase