簡體   English   中英

如何在TabLayout中自定義選定的選項卡指示器?

[英]How can I customize the selected tab indicator in a TabLayout?

我想更改帶有自定義圖標的TabLayout的選定選項卡指示器,該指示器應該遵循相同的行為(當用戶向下一個選項卡滑動時,圖標會相應移動)。

該類中沒有默認方法,因為您只能實現選項卡的布局自定義。 我決定看一下TabLayout的源代碼 ,但是1)我無法在類中找到定義制表符指示符將在繪制時采用的形狀定義的要點,以及2)我什至無法完全導入該類。 我還希望-如果可能的話-避免使用任何第三方庫,因為該項目已經非常繁重。

你有什么建議嗎? 我可以看到兩種可能的方法:

  1. 尋找一種自定義TabLayout類的方法,以用自定義圖標替換“方形”。
  2. 尋找一種方法來協調用戶在ViewPager上的觸摸手勢與自定義View(即我的圖標)的移動。

我目前可以想到的一種解決方案是,您必須創建一個自定義視圖布局文件來表示所需的“選定的選項卡”,然后將android:tabStripEnabled="false"注釋到XML文件中的TabLayout中。

之后,您必須在tablayout實例上注冊一個偵聽器,並檢查選擇了哪個索引,並使用給定索引調用TabLayout.getTabAt(i).setCustomView(yourSelectedCustomView)

在這里看看如何為TabLayout創建自定義視圖: https : TabLayout

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM