簡體   English   中英

如何從RecyclerView中刪除SnapHelper

[英]How to remove SnapHelper from a RecyclerView

我使用attachToRecyclerView(RecyclerView) ,它按預期工作。

問題:在某些時候我想要相同的recyclerView正常滾動,如何實現?

碼:

PagerSnapHelper pagerSnapHelper = new PagerSnapHelper();
pagerSnapHelper.attachToRecyclerView(recyclerView);

recyclerview-v7:25.1.0 ,就足以打電話了

snapHelper.attachToRecyclerView(null); 

刪除SnapHelper

我遇到了同樣的問題。 調用

 
 
 
  
  clearOnScrollListeners(); setOnFlingListener(null);
 
  

RecyclerView實例上為我做了訣竅。 僅調用 setOnFlingListener(null); 在我的情況下是不夠的

好吧,它是在SnapHelper官方API上編寫的:公共方法=> attachToRecyclerView:[要添加此幫助程序的RecyclerView實例, 如果要從當前的RecyclerView中刪除SnapHelper,則返回null 。] https://developer.android。 COM /參考/機器人/支撐/ V7 /插件/ SnapHelper.html#attachToRecyclerView%28android.support.v7.widget.RecyclerView%29

如果您不想保留SnapHelper的引用,那么根據您可以使用的官方文檔還有另一種方法

recyclerView.setOnFlingListener(null);

來自Android documentaion

  • 通過調用將{@link SnapHelper}附加到提供的RecyclerView
  • {@link RecyclerView#setOnFlingListener(RecyclerView.OnFlingListener)}。
  • 您可以使用{@code null}調用此方法將其與當前的RecyclerView分離。

警告

SnapHelper.attachToRecyclerView()可以拋出IllegalArgumentException

  • @throws IllegalArgumentException如果已經有{@link RecyclerView.OnFlingListener}
  • 附在提供的{@link RecyclerView}上。

暫無
暫無

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

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