5

Apple のドキュメントによると、アクティビティ インジケータを表示して、何かがロードされているか、画面に表示されるまでに時間がかかっていることを示す必要があります。これは合理的であり、私はそれをやりたいと思っています...
ここに画像の説明を入力

明らかな何かが欠けているように感じますが、ビューにアクセスできないため、CarPlay アプリのテンプレートにアクティビティ インジケーターを表示する方法がわかりません。利用可能なテンプレートとしかやり取りできません。

Apple のドキュメントの画像と一致させようとしている場合は、 を使用し、listTemplateそれにアクティビティ インジケーターを追加する必要があると思います。

他の誰かがこれに出くわしましたか? どんな助けでも大歓迎です!


WWDC 中の Apple エンジニアからの更新 (2021 年 7 月)

WWDC21 でこの質問をしたところ、次のような回答がありました。

を使用している場合、ユーザーがリスト項目をタップするCPListTemplateと、システムによって が呼び出されます。-[CPListItem handler]システムはハンドラーに完了ブロックを提供します。これは、アプリがユーザーの選択の処理を完了した後に必ず呼び出す必要があります。アプリが完了ブロックをすぐに呼び出さなくても問題ありません。アプリでネットワーク リクエストを実行する必要がある場合は、時間がかかります。完了ブロックがまだ呼び出されていない場合、システムは少し遅れてリスト項目にスピナーを自動的に追加します。

もう 1 つのオプションは、残りのアイテムがまだロード中または進行中であることを示す 1 つのリスト アイテムを含むリスト テンプレートを提示することです。

特にタブ バー テンプレートの場合、表示された後に表示されるタブを更新できます。たとえば、アプリの起動時にタブをすぐに表示できない場合は、1 つまたは複数のタブを動的に追加できます。

または、全画面表示の場合はCPAlertTemplate、アプリのエラーまたは読み込み状態を示すために を表示できます。

4

1 に答える 1