问题描述
当自动滑块基于 StoriesProgressView 的 setStoryDuration 时,它与视图分页器一起使用,所以那时我改变了 view-pager 的 setCurrentItem 并且工作正常,但我想做反向过程,如用户滑动视图寻呼机和 StoriesProgressView 进度条的位置设置基于视图寻呼机的当前位置。
这是我的代码:
public class MainActivityNew extends AppCompatActivity {
Context context;
WrapContentHeightViewPager mPager;
ProgressBar slider_progress;
RelativeLayout main_drawer;
StoriesProgressView storiesProgressView;
final int NUM_PAGES = 6;
private int currentPage2 = 0;
private final int[] resources = new int[]{
R.drawable.sample1,R.drawable.sample2,R.drawable.sample3,R.drawable.sample4,R.drawable.sample5,R.drawable.sample6,};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getwindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main_new);
context = this;
mPager = findViewById(R.id.pager);
storiesProgressView = (StoriesProgressView) findViewById(R.id.story_progress_view);
slider_progress = findViewById(R.id.slider_progress);
main_drawer = findViewById(R.id.main_drawer);
try {
storiesProgressView.setStoriesCount(NUM_PAGES);
storiesProgressView.setStoryDuration(3000L);
storiesProgressView.startStories();
storiesProgressView.setStoriesListener(new StoriesProgressView.StoriesListener() {
@Override
public void onNext() {
if (NUM_PAGES == 1) {
currentPage2 = 0;
storiesProgressView.setStoriesCount(NUM_PAGES);
storiesProgressView.setStoryDuration(3000L);
storiesProgressView.startStories();
if (mPager != null) {
mPager.setCurrentItem(0);
}
} else {
currentPage2 = currentPage2 + 1;
mPager.setCurrentItem(currentPage2,true);
}
}
@Override
public void onPrev() {
currentPage2 = currentPage2 - 1;
mPager.setCurrentItem(currentPage2--,true);
}
@Override
public void onComplete() {
storiesProgressView.destroy();
currentPage2 = currentPage2 + 1;
if (currentPage2 == NUM_PAGES) {
currentPage2 = 0;
storiesProgressView.setStoriesCount(NUM_PAGES);
storiesProgressView.setStoryDuration(3000L);
storiesProgressView.startStories();
if (mPager != null) {
mPager.setCurrentItem(0);
}
}
}
});
SlidingImage_Adapter2 adapter = new SlidingImage_Adapter2(context,resources);
mPager.setAdapter(adapter);
} catch (
Exception e) {
e.getStackTrace();
}
}
}
我正在使用这个库:Example & 这是我的演示:Demo
期待找到解决方案。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)