電視

  
為開發人員提供 Compose 和質感設計功能,以便編寫電視專用應用程式
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2023 年 2 月 8 日 - - - 1.0.0-alpha04

宣告依附元件

如要為 tv-foundation 和 tv-material 新增依附元件,您必須將 Google Maven 存放區新增至您的專案。詳情請參閱「Google 的 Maven 存放區」。

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

dependencies {
    implementation "androidx.tv:tv-foundation:1.0.0-alpha04"
    implementation "androidx.tv:tv-material:1.0.0-alpha04"
}

Kotlin

dependencies {
    implementation("androidx.tv:tv-foundation:1.0.0-alpha04")
    implementation("androidx.tv:tv-material:1.0.0-alpha04")
}

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有問題。

回報新問題

詳情請參閱 Issue Tracker 文件

這個構件沒有任何版本資訊。

1.0.0 版本

1.0.0-alpha04 版本

2023 年 2 月 8 日

發布 androidx.tv:tv-foundation:1.0.0-alpha04androidx.tv:tv-material:1.0.0-alpha041.0.0-alpha04 版本包含以下修訂項目。

新功能

  • 可以視需要覆寫 Lazy 列、欄和格線中的樞紐,確保整個項目呈現在檢視畫面中。(11d7e40)
  • 支援自訂分頁在各種狀態下的顏色。(21b2925)
  • 輪轉介面支援設定手動前後捲動的自訂動畫。(431494a)

API 變更

  • androidx.tv.material 重新命名為 androidx.tv.material3,並簡化 androidx.tv.material3 底下的套件結構。(I6ca52)
  • 輪轉介面指標列中的指標已成為開發人員可以自訂的運算單元。(268af2a)
  • focusableItem 已重新命名為 immersiveListItem。使用者將必須手動新增 focusable()clickable() 修飾符和 immersiveListItem (5dd5078)(b/263061052)
  • 輪轉介面元件中的 timeToDisplayMillis 已重新命名為 autoScrollDurationMillis。(431494a)
  • CarouselItem 只能在 Carousel 中使用。(431494a)
  • 輪轉介面接受 ContentTransforms 做為動畫定義,不接受 EnterTransitionExitTransitions。(431494a)
  • 推出 PinnableContainer API;此 API 是由 Lazy 清單透過本機組合傳播,可固定目前項目。(Ib8881b/259274257b/195049010)
  • TvLazyListLayoutInfoTvLazyGridLayoutInfo 中新增 mainAxisItemSpacing 屬性 (I37765)

修正錯誤

  • 更新分頁標籤列,確保能正確處理分頁標籤數為 0 或 1 的情況。(I440091c01525b/264018028)
  • 修正當 TvLazyColumn 含有空白 TvLazyRow 時會導致焦點搜尋異常終止的問題。(e11b4feb/260299091)
  • clickable 修飾符可與 ImmersiveList 搭配使用。(5dd5078b/263061052)
  • 支援處理返回鍵操作,可使用返回鍵退出精選輪轉介面。(84c138c)
  • 輪轉介面不會因為快速多次按下按鍵而失去焦點。(799489f)
  • 輪轉介面不會因為長按按鍵而失去焦點。(b2cf37e)
  • 修正當輪轉介面滑動次數變更時發生的當機問題。(b261247)

1.0.0-alpha03 版本

2022 年 12 月 7 日

發布 androidx.tv:tv-foundation:1.0.0-alpha03androidx.tv:tv-material:1.0.0-alpha03查看 1.0.0-alpha03 版的修訂項

新功能

  • TabRow 現已做為實驗性 API 提供,可讓使用者將上方瀏覽列新增至其應用程式。一般而言,當焦點落在分頁標籤列中的分頁標題上,電視裝置應該會載入分頁。
  • 並未直接提供如底線指標和藥丸形狀指標等電視特定指標。您可以在 tv-samples 中找到使用範例

1.0.0-alpha02 版

2022 年 11 月 9 日

發布 androidx.tv:tv-foundation:1.0.0-alpha02androidx.tv:tv-material:1.0.0-alpha02查看 1.0.0-alpha02 版的修訂項

修正錯誤

  • 縮減聚焦搜尋空間,藉此改善捲動一組 TvLazyRows/TvLazyColumns 時的捲動效能。(I723a3)

1.0.0-alpha01 版

2022 年 10 月 5 日

發布 androidx.tv:tv-foundation:1.0.0-alpha01androidx.tv:tv-material:1.0.0-alpha011.0.0-alpha01 版本包含以下修訂項目。

新功能

第一個 Alpha 版包含下列早期預先發布版的元件實作,適用於電視用途:

  • 新增修飾符 scrollableWithPivot,允許非延遲捲動容器 (例如 Row、Column、Grid) 透過捲動容器來捲動內容,讓焦點項目在電視畫面上的位置保持不變。
  • 新增可組合項 TvLazyRowTvLazyColumnTvLazyHorizontalGridTvLazyVerticalGrid,以利透過捲動容器來捲動內容,讓已選取項目保持在電視螢幕的相同位置。
  • 為電視新增「精選輪轉介面」可組合項目,以便使用者建立自動捲動的橫幅輪轉介面。
  • 新增適用於電視的 Immersive List 可組合項,可供建立會隨著清單中選取的項目更換背景的 Immersive Row/Column/Grid。

已知問題

  • 根據預設,當捲動容器取得焦點時,第一個元素不會取得焦點。
  • 聚焦於 TextField 時,不一定會開啟鍵盤,也可能導致焦點無法移至其他欄位。
  • 如果在包含 LazyRowsLazyColumn 中垂直捲動,則捲動效能不佳。