KLWPで週の始まりの曜日の変更に対応した週間カレンダーを作る

|

KLWPはアプリ内で「週の始まりの曜日」を自由に変更できます。これに対応した、当日を含む1週間の日付曜日を表示するカレンダーを作ってみます。

はっきり言って、自分のためだけに作るのであればまったく必要のないものです。配布するなどで不特定多数の人に使われるのであれば意味があるかもしれませんが…。

週の始まりの曜日

KLWPではその設定に「週の始まりの曜日」というものがあります。カレンダーアプリでよくある項目ですが、KLWPでは月曜日から日曜日までどの曜日でも選べます。

「週の始まりの曜日」がどこに影響するかと言うと、$df(e)$での表示です。これは「週の始まりの曜日」で指定した曜日を基準として、その曜日を1、前日を0、翌日を2と表示します。$df(f)$が月曜日を1として日曜日の7まで表示するのと似ています。

仮に「週の始まりの曜日」を水曜日とすると、$df(e)$と$df(f)$は以下の値を返します。

月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日
df(f) 1 2 3 4 5 6 7
df(e) 6 0 1 2 3 4 5

週の始まりの曜日を表示する

KLWPでは、指定した週の始まりの曜日を表示するようなものはありません。ですがちょっとした式で表示する事はできます。

まず、以下の式があります。

$df(e, 1w)$

$df(e)$は先程も書いたとおり、当日の曜日を、指定した週の始まりの曜日を基準に数値化したものです。これを$df(e, 1w)$と日付を1wで指定します。1wというのは今週の1日目、つまり月曜日のことです。$df(e, 1w)$は、指定した週の始まりの曜日を基準に今週月曜日を数値化したものです。

これは週の始まりの曜日をどれに指定したかで以下のようになります。

週の始まり 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日
df(e, 1w) 1 0 6 5 4 3 2

なので、これを使って

$tc(split, "火#月#日#土#金#木#水", "#", df(e, 1w))$

とでもすれば、指定した週の始まりの曜日を表示できます。

週間カレンダーを作る

これまでのことを理解して、それを使って週間カレンダーを作ります。左端が設定で指定した週の始まりの曜日になるようにします。

曜日部分

まず曜日部分は、先程と同じようにdf(e, 1w)で指定した週の始まりの曜日を数値化して、tc(split)でその数字をテキスト化します。場所ごとに少しずつ表示テキストをずらして上げればOKです。

日付部分

日付部分はちょっと複雑に見えますが、df(e)をもとに、やはりtc(split)で日付を割り当てていきます。わりと愚直にやってます。

こんなふうに、実際の表示がどうなるかのパターンを表にしてみると、法則などが見えてくるのではないでしょうか。

完成

ゴチャゴチャしたところをふっとばしますが、他に当日の日付部分を背景つけるなどして完成です。

ちゃんと、指定した曜日が先頭に来てますし、それを基準に、今日を含む7日間が表示されています。月をまたぐところも大丈夫です。

ダウンロード

一応、コンポーネントとしてダウンロードできるようにしておきます。

Google playWeeekly
Weeekly
制作: orefolder
価格: 無料

ダウンロード

まとめ

正直、自分でも頭がゴチャゴチャしています。そのわりにそれほど役に立つものでもないという…。一応、上の方法のほかにもまた違う考え方で同じような表示をすることもできます。方法は1つじゃないってことです。

まぁ、どうやればいいのか考えるのは面白いですね。


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

Random Posts

KLWPで3つの画面それぞれに違う壁紙画像を設定してスクロールさせる方法
nuroモバイル(0 SIM)の通信の最適化の解除を行ってみた
Androidの地味で目立たなくて忘れられがちだけど使うと意外と便利な機能
ZenFone 3 サファイアブラックは大人の紳士的な雰囲気!パールホワイトとは違った「良さ」あり!
「アンドロイドのホーム画面をカスタマイズする本10」PDF版および書店委託販売のご案内
Language Navi:「日本語じゃないので☆1です」なんてもう言えない!アプリ画面を翻訳してくれるアプリ
Mi Band 3がファームウェアアップデートで英語表示に対応してたけど中国語に戻した
懐古【ホーム画面コンテスト2017】
20周年の気合を感じた!HTCサポーターズクラブ キックオフミーティングに参加! #HTCサポーター
ZenFoneやHuawei機でシステムUI調整ツールを出す方法
アプリ不要でQRコードを読み取る方法-Now on TapとカメラだけでOK
祝10周年!Android 1.0のリリースから本日で10年です!
もっと簡単!adbコマンドを使えるようにする方法-ダウンロードして解凍してパスを通すだけでOK
KLWPの小技:UTFコードなどを使って「テキスト」でアイコンフォントを表示する
CUBOT CHEETAH 2 ファーストインプレッション:フィット感良く期待が膨らむ2万円中華スマホ