KLWPで月間カレンダーその2:日曜始まりと月曜始まりも切り替えられるように

KLWPで月間カレンダーを作ってみました。コンポーネントとして作成したので、ダウンロードしてテストしてみていただけると嬉しいです。

実はKLWPでのカレンダー自体は3年と少し前にも作っていました。

うまく作れたと思っていたのですが、自分で使ってる時に何度か変な表示になったことがありました。それでいつか作り直したいなと思っていたのですが、それで3年以上経ってしまいましたね。

  • 本記事は広告およびアフィリエイトプログラムによる収益を得ています。

ダウンロード

Google playCalendar3.komp
制作: orefolder
価格: 無料

ダウンロード

Google playCalendar3b.komp
制作: orefolder
価格: 無料

ダウンロード

上記2つどちらも同じですが、calendar3.kompはいろいろ編集できるタイプ。calendar3b.kompはある程度ロックが掛かってて、使うだけならこちらのほうがわかりやすいです。

ダウンロードして、端末のKustomフォルダの中にあるKompornentフォルダに入れれば、KLWPのメニューから呼び出せるようになるはずです。

サンプル

グローバル変数をいじることで表示をカスタマイズできます。カスタマイズできる項目は以下の通り。

  • 数字間の余白(縦横)
  • 表示フォント
  • テキストサイズ
  • 平日の色
  • 土曜の色
  • 日曜の色
  • 当日印の形
  • 当日印の塗りつぶしor枠線
  • 当日印の背景色・テキストの色
  • 日曜始まり/月曜始まり
  • 曜日名のところの背景色
  • 曜日名のところの角丸
  • 曜日名を1文字表示/2文字表示

たぶんちゃんとできてると思うのですが、あまりテストしてないので何かしらでおかしな表示になるかもしれません。また、現在(2020年3月18日現在)KLWPでifがうまく動かないことが端末によってはあるようです。このカレンダーもifをたくさん使ってるので、変な表示になることもありえます。

前回からの変更点

3年前に作ったものとはいろいろ変わっているのですが、基本的に2週目から4週目の書き方を元にしています。詳細は省きますが、「2周目の月曜(日曜)の日付」は割と簡単に求められるので、ほかの日はそこからの日数で計算して表示しています。

3年前のときは「前月/当月の最終日」を計算して求めていたりしたのですが、実は$df(o)$で当月の日数を表示できると後から知りました。今回はそれも使っています。

また、前回は月曜始まりのみだったのですが、今回は日曜始まりも加えて、切り替えられるようにしています。これもまた厄介でした。最終的にはわりとシンプルにできたと思います。

まとめ

カレンダーの表示もいろいろやり方はあると思うのですが、実際に自分でどうやって作ろうか考えると難しいですね。けっこう頭の体操になります。

まぁ、ここまで苦労して作っても、Playストアにある他の人が作ったカレンダーコンポーネントのほうが多機能で良かったりするのですが…。


KLWPの使い方についてはこちらのページにてまとめています。使い方に困ったときなど、こちらのページも参考にしてください。

  • 本記事に記載された内容は記事公開時点のものであり、必ずしも最新の情報とは限りません。記事をご覧いただく際には、最新の情報を確認するようお願いいたします。
OREFOLDERの最新情報をお届けします
author icon
orefolder

OREFOLDER編集長。
1979年静岡県清水市生まれ、現静岡市清水区在住。

様々な巡り合わせから、このサイト1本で生活してる氷河期世代の一人。ガジェットに限らず広く浅く様々なものに興味があります。

スマートフォンは2010年にXperia SO-01Bを買ったのが最初。同時にb-mobile U300で格安SIMも始めました。これまでに数百台のスマホを手にし、格安SIMも常時20種類以上契約しています。

⇨orefolderの記事一覧