主機最多可顯示五個範本,且最後一個範本必須是下列其中一種:
NavigationTemplatePaneTemplateMessageTemplateMediaPlaybackTemplateSignInTemplateLongMessageTemplate
請注意,這項限制適用於範本數量,而非堆疊中的 Screen 執行個體數量。舉例來說,如果應用程式在畫面 A 中傳送兩個範本,然後推送畫面 B,現在可以再傳送三個範本。
或者,如果每個畫面都設定為傳送單一範本,應用程式可以將五個畫面例項推送至 ScreenManager 堆疊。
但範本重新整理、返回和重設作業不受這些限制。
範本重新整理
部分內容更新不會計入範本上限。一般來說,如果應用程式推送的新範本類型相同,且包含與先前範本相同的主要內容,系統就不會將新範本計入配額。舉例來說,更新 ListTemplate 中資料列的切換按鈕狀態,不會計入配額。如要進一步瞭解哪些類型的內容更新可視為重新整理,請參閱個別範本的說明文件。
返回作業
如要在工作內啟用子流程,主機會偵測應用程式何時從 ScreenManager 堆疊彈出 Screen,並根據應用程式返回的範本數量,更新剩餘配額。
舉例來說,如果應用程式在畫面 A 中傳送兩個範本,然後推送畫面 B 並再傳送兩個範本,則應用程式還剩一個配額。如果應用程式隨後返回畫面 A,主機會將配額重設為三,因為應用程式已回溯兩個範本。
請注意,應用程式返回畫面時,必須傳送與該畫面上次傳送的範本類型相同的範本。傳送任何其他範本類型都會導致錯誤。不過,只要在返回作業期間類型保持不變,應用程式就能隨意修改範本內容,不會影響配額。
重設作業
部分範本具有特殊語意,表示工作已完成。舉例來說,NavigationTemplate 檢視區塊應會保留在畫面上,並為使用者提供新的轉彎指示。
當工作到達其中一個範本時,主機會重設範本配額,並將該範本視為新工作的第一個步驟。這樣一來,應用程式就能啟動新工作。詳情請參閱個別範本的說明文件,瞭解哪些範本會觸發主機重設。
如果主機收到從通知動作或啟動器啟動應用程式的意圖,配額也會重設。這個機制可讓應用程式從通知開始新的工作流程,即使應用程式已繫結並處於前景,也適用這項機制。