Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取当前项目ViewPageAdapter Android_Android - Fatal编程技术网

获取当前项目ViewPageAdapter Android

获取当前项目ViewPageAdapter Android,android,Android,我在网上搜索,但我没有找到任何真正解决我问题的方法 我有一个带可视传呼机的班级。(类别描述:芦丁酸) 我有一个可视页面雷达 class ViewPagerAdapter extends FragmentPagerAdapter { private int numDias; private int count = 0; public ViewPagerAdapter(FragmentManager manager) { super(manager);

我在网上搜索,但我没有找到任何真正解决我问题的方法

我有一个带可视传呼机的班级。(类别描述:芦丁酸)

我有一个可视页面雷达

 class ViewPagerAdapter extends FragmentPagerAdapter {

    private int numDias;
    private int count = 0;
    public ViewPagerAdapter(FragmentManager manager) {
        super(manager);
    }
    ArrayList<Dia> dias;

    @Override
    public Fragment getItem(int position) {
        OneFragmentSeries fragmento = new OneFragmentSeries();

        Dia ex = dias.get(**I NEED CURRENT ITEM HERE**);
        nomDia = ex.getNombre();

        fragmento.setSeries((ArrayList<Serie>)((ArrayList<Dia>)WorkoutYourself.dameWorkoutYourself().dameRutina(nomRutina).getDias()).get(position).getSeries());
        return fragmento;
    }
class ViewPagerAdapter扩展了FragmentPagerAdapter{
私有int numDias;
私有整数计数=0;
公共视图页面编辑器(碎片管理器){
高级经理;
}
阿雷利斯特·迪亚斯;
@凌驾
公共片段getItem(int位置){
OneFragmentSeries fragmento=新的OneFragmentSeries();
Dia ex=dias.get(**我需要当前项目**);
nomDia=ex.getNombre();
fragmento.setSeries((ArrayList)((ArrayList)WorkoutYourself.dameWorkoutYourself().dameRutina(nomRutina.getDias()).get(position.getSeries());
返回碎片;
}
我需要当前项目的位置在这里

注:ViewPagerAdapter为内部描述


谢谢大家!

试着使用
yourViewPager.getCurrentItem()
它应该可以让你们看到寻呼机的位置

更新

onPageSelected(int-currentPage)
应该完成这些工作

dia.setOnPageChangeListener(new OnPageChangeListener() {

    public void onPageScrollStateChanged(int arg0) {
    }

    public void onPageScrolled(int arg0, float arg1, int arg2) {
    }

    public void onPageSelected(int currentPage) {
        //here you get your current position
    }

});

尝试使用
yourViewPager.getCurrentItem()
它应该可以获得可见的寻呼机位置

更新

onPageSelected(int-currentPage)
应该完成这些工作

dia.setOnPageChangeListener(new OnPageChangeListener() {

    public void onPageScrollStateChanged(int arg0) {
    }

    public void onPageScrolled(int arg0, float arg1, int arg2) {
    }

    public void onPageSelected(int currentPage) {
        //here you get your current position
    }

});
读这个

读这个


你是说你的可视页面的当前位置吗?是的,我使用标签,但是“位置”不给我当前标签,给我下一个标签,当我到达最后一个标签时,“位置”变量始终只给我最后一个标签。你试过你的可视页面了吗。获取(位置)?是的,请参阅我的评论。Position不返回当前实际位置我不知道为什么需要它,但您可以尝试在适配器的构造函数中传递
ViewPager
实例,然后您可以访问它的任何公共方法。您是指可视ViewPager的当前位置吗?是的,我使用选项卡,但“Position”不要给我当前选项卡,给我下一个选项卡,当我到达最后一个选项卡时,变量“position”始终只给我最后一个选项卡。您是否尝试过ViewPager.get(position)?是的,请参阅我的注释。Position不返回当前实际位置我不知道为什么需要它,但您可以尝试在适配器的构造函数中传递
ViewPager
实例,然后可以访问它的任何公共方法。问题是,如果getItem在“getItem”方法中,我如何在“getItem”方法中使用此命令“yourViewPager”?我的荣幸…快乐编码:)问题是,如果getItem在“yourViewPager”内,我如何在“getItem”方法内使用此命令?我的荣幸…快乐编码:)
 viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int positionCurrentPage) {
           if(positionCurrentPage == 1){  // if you want the second page, for example
               //Your code here
           }
        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });