setDataObserver和最新的支持库

时间:2013-05-10 14:04:23

标签: android

我的应用程序使用的DirectionalViewPager库有自己的support-library-v4.jar但是当我使用这个版本时,当我按下home键时它会导致force关闭。我发现我应该更改为支持库的最新版本但是,DirectionalViewPager无法导入:PagerAdapter.DataSetObserver

我该如何解决?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

看起来示波器可能已更改,导致DVP库无法正常工作。有关详细信息和解决方法,请参阅herehere

将以下类添加到项目中(确保正确包装,否则无效):

package android.support.v4.view;

    public final class PagerAdapterPublicCompat {
        private PagerAdapterPublicCompat() {}

        public interface DataSetObserver extends PagerAdapter.DataSetObserver {}

        public static void setDataSetObserver(PagerAdapter adapter, DataSetObserver observer) {
            adapter.setDataSetObserver(observer);
        }
    }

然后你必须设置你的数据观察者:

// from the sample code:
final DirectionalViewPager pager = (DirectionalViewPager)findViewById(R.id.pager);
pager.setAdapter(new TestFragmentAdapter(getSupportFragmentManager()));
// new addition:
PagerAdapterPublicCompat.setDataSetObserver(pager.getAdapter(), YourDataSetObserver);