Android:ViewPager的onPageSeletected()方法逻辑正在减慢滑动速度

时间:2017-08-10 21:22:00

标签: android android-fragments fragment

我是第一次编程和实施ViewPager的新手。

ViewPager包含2个片段。当有人从Fragment 2切换回Fragment 1时,我需要创建一些逻辑来检查更改。这就是我到目前为止所拥有的:

mPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int position) {


            if (mPager.getCurrentItem() == 0) {

            incentiveWindowReference.deActivateDeleteMode();
            TextView bubbleText = (TextView) findViewById(R.id.bubble_text_xml);

            boolean hasActiveItems = false;
            for (int i = 0; i < incentiveList.size(); i++) {
                if (incentiveList.get(i).getActiveOrInactive()) {
                    hasActiveItems = true;
                }
            }
            if (hasActiveItems) {

                bubbleText.setText("Finish Pomodoros to unlock Incentives!");
            } else bubbleText.setText("No active Incentives!");

            if (!timerWindowReference.getCurrentlyBreaking()) {
                timerWindowReference.pause();
                timerRunning = false;
                Button startStopButton = (Button) findViewById(R.id.button);
                startStopButton.setText("START");

                timerWindowReference.activateResetSkip();}
            }



        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });

问题是,这部分使ViewPager变得迟钝。如果我发表评论,那就很顺利了。但我不知道我还能怎么做。 如果有人从片段2切换回片段1(或1到0)并在片段2中进行了一些更改,我需要更改片段1中的bubbleText。

修改

所以我把它缩小了。调用方法&#34; deactivateDeleteMode&#34;导致滞后。这是此方法的内容:

public void deActivateDeleteMode() {
    delete.setText("DELETE");
    addIncentiveButton.setVisibility(View.VISIBLE);
    mDeleteMode = false;
    setAdapter();
}

问题似乎是&#34; setAdapter()&#34;

我调用setAdapter的原因是,当mDeleteMode == false时,它使用不同的图像填充List。如果mDeleteMode == true,则显示垃圾箱图标并在单击时删除该项目。如果mDeleteMode == false,则显示正常图像。

我希望删除deleteMode,如果有人离开片段。

0 个答案:

没有答案