我正在使用ListView来实现一个简单的老虎机。我想使用它的视图回收功能。一切都很好,除了我找不到更改使用的默认动画插值器的方法。
这是平滑滚动到某个位置的代码行:
getListView().smoothScrollToPositionFromTop(position,offset,duration);
它工作正常,只是它以线性方式动画到该位置,默认情况下使用线性插值器。有没有办法/解决方法来提供自定义插值器,如加速减速插值器而不是线性插值器?
提前谢谢。
我在网上找到了这个,但我不知道如何覆盖,这是最终的。
https://github.com/android/platform_frameworks_base/blob/master/core/java/android/widget/AbsListView.java
public abstract class AbsListView extends AdapterView<ListAdapter> implements TextWatcher,
ViewTreeObserver.OnGlobalLayoutListener, Filter.FilterListener,
ViewTreeObserver.OnTouchModeChangeListener,
RemoteViewsAdapter.RemoteAdapterConnectionCallback {
/**
* Used for smooth scrolling at a consistent rate
*/
static final Interpolator sLinearInterpolator = new LinearInterpolator();
尝试使用RecyclerView,它可以使用自定义插值器。