Recyclerview onScrollChangelistener 不断快速触发
Recycle view onScrollChange listener keep triggering rappedly
我正在使用下面的代码在我切换项目时向回收视图添加振动效果,但是在我触摸回收视图的整个过程中振动一直被触发,我希望它只激活一次振动器项目已更改。
recyclerView.setOnScrollChangeListener( new View.OnScrollChangeListener() {
@Override
public void onScrollChange(View view, int i, int i1, int i2, int i3) {
Vibrator v = (Vibrator) TeacherMain.this.getSystemService( Context.VIBRATOR_SERVICE);
v.vibrate(5);}
} );
您可以进行如下操作:
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (SCROLL_STATE_TOUCH_SCROLL == newState) {//when finger touch it.
Vibrator v = (Vibrator) MainActivity.this.getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(5);
}
}
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
}
});
我正在使用下面的代码在我切换项目时向回收视图添加振动效果,但是在我触摸回收视图的整个过程中振动一直被触发,我希望它只激活一次振动器项目已更改。
recyclerView.setOnScrollChangeListener( new View.OnScrollChangeListener() {
@Override
public void onScrollChange(View view, int i, int i1, int i2, int i3) {
Vibrator v = (Vibrator) TeacherMain.this.getSystemService( Context.VIBRATOR_SERVICE);
v.vibrate(5);}
} );
您可以进行如下操作:
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (SCROLL_STATE_TOUCH_SCROLL == newState) {//when finger touch it.
Vibrator v = (Vibrator) MainActivity.this.getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(5);
}
}
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
}
});