アジェンダ (カレンダー)
タイムラインと読み込みパフォーマンス

タイムラインと読み込みパフォーマンス

Key Launcherのアジェンダシートは、端末のメモリやバッテリー寿命に影響を与えることなく、複数年分のカレンダーデータを軽快に処理できるよう高度に最適化されています。

Agenda Sheet Timeline

ISO週単位のグループ化

タイムラインのスクロール表示は、時系列に沿って週ごとに分かりやすく整理されます:

  • 予定はシンプルな週ヘッダー(例:6月19日(月)の週)の下にグループ化されます。
  • 予定、祝日、誕生日のない日付は自動的に省略され、無駄のないコンパクトなレイアウトが維持されます。

動的な月タイトル表示

  • タイムラインを上下にスクロールすると、Key Launcherは最上部に表示されている項目の日付を検知します。
  • ヘッダータイトル(例:2026年 6月)は、現在画面に表示されている週の月に合わせてリアルタイムに自動更新されます。

パフォーマンス:段階的読み込みメカニズム

大量の過去・未来の予定を一度に読み込んでスクロールが重くなるのを防ぐため、以下の設計が採用されています:

  1. 初回読み込み: アジェンダシートを開いた際、ランチャーは直近30日間のカレンダーデータのみを高速クエリします。
  2. 段階的な追加: タイムラインの一番下までスクロールし、さらに読み込むボタンをタップします。
  3. スクロール位置の保持: スクロール位置を崩すことなく、バックグラウンドスレッドで次の30日分の予定がタイムライン末尾に追加されます。