-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NavigatorHelper onSelected &onDeselected 多次调用 #1
Comments
不能去掉的,这是为了保证在极端情况下指示器的显示状态正确,比如:你的指示器是可编辑的,显示在A界面,你在B界面编辑了指示器并返回到A界面(你可以想象一下今日头条的频道编辑),此时,原有的PositionData肯定不合法了,如果在合法的PositionData再次生成之前收到了onPageSelect或是onPageScroll回调,这时候去处理就显得没意义。所以我在CommonNavigator.preparePositioinData中去手动调了这三个回调,确保状态正确。同时,如果你当前位于ViewPager的C页,你调用ViewPager.setCurrentItem(C)是不会收到onPageSelected回调的,只会收到onPageScroll(C,0.0f,0),此时我也将这个处理成onPageSelect,也是为了确保状态正确 |
噢。。这样啊,我这边是在onPageSlect里对文字大小颜色做了改变,导致了 标题会在多次调用的时候闪烁。 |
改字体大小确实有问题,主要是内部没保存哪些Item该调用onDeselected,所以每次都循环调用,后面会做个记录,只对需要调用onDeselected的item调用 |
@lsp19880926 这个问题已解决,你再试试改变字体大小 |
compile 'com.github.hackware1993:MagicIndicator:1.5.0' |
请问一下 NavigatorHelper 中的mNavigatorScrollListener.onSelected(safePosition); 和mNavigatorScrollListener.onDeselected(i);可以去掉么?在onPageSelected中已经调用过。
The text was updated successfully, but these errors were encountered: