Comments (2)
public abstract class OnPageChangeListenerHelper implements ViewPager.OnPageChangeListener {
private int currentPage;
private int lastPage;
private int lastSelected;
@Override
public final void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
int selectedPosition = currentPage;
resetPosition(lastSelected);
if ((position != currentPage && positionOffset == 0) || currentPage < position) {
resetPosition(currentPage);
selectedPosition = currentPage = position;
}
if (Math.abs(currentPage - position) > 1) {
resetPosition(selectedPosition);
selectedPosition = currentPage = lastPage;
}
int nextPosition = -1;
if (currentPage == position && currentPage + 1 < getPageCount()) {
nextPosition = currentPage + 1;
} else if (currentPage > position) {
nextPosition = selectedPosition;
selectedPosition = currentPage - 1;
}
Log.d("onPageScrolled1", selectedPosition + "," + nextPosition);
Log.d("onPageScrolled2", currentPage + "," + position);
onPageScrolled(selectedPosition, nextPosition, positionOffset);
lastPage = position;
}
@Override
public final void onPageSelected(int position) {
currentPage = position;
Log.d("onPageSelected", currentPage + "," + lastPage);
lastSelected = lastPage;
}
@Override
public final void onPageScrollStateChanged(int i) {
}
abstract void onPageScrolled(int selectedPosition, int nextPosition, float positionOffset);
abstract void resetPosition(int position);
abstract int getPageCount();
}
from dotsindicator.
@Tijn1314 Hi, can you please try with the last version 4.0
?
Thanks
from dotsindicator.
Related Issues (20)
- Issue in support of rtl and ltr.
- Gradle Error "Null extracted folder for artifact ResolvedArtifact" for "com.tbuonomo:dotsindicator:5.0" HOT 3
- dotsindicator position changed listener
- Versions 4.3 and 5.0 don't work with custom build types, but version 4.2 did! HOT 2
- Split artifacts for Compose and View-based indicators
- Set color for selected dots for ShiftIndicatorType in Jetpack Compose
- DotsIndicator 5.0 causes NullPointerException on SingleLiveData, but 4.3 works fine!
- Kotlin 1.7.1 Could not find com.tbuonomo.andrui:viewpagerdotsindicator:5.0. HOT 3
- Dupplicate class with version 5.0
- com.tbuonomo.andrui:viewpagerdotsindicator:3.0.3
- Selected item indicator color can't edit
- class file has wrong version 62.0, should be 55.0 HOT 2
- set backgorund color of SpringDotsIndicator
- Feature request : vertical dots indicator
- How to change selected dot position?
- Indicator dose not appear on screen
- Could not resolve com.tbuonomo:dotsindicator:5.0. HOT 6
- Changing dots color individually
- Does this repository not accept Pull Requests anymore?
- is ShiftIndicatorType available for xml?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dotsindicator.