我的应用程序使用具有自己的 support-library-v4.jar 的 DirectionalViewPager 库,但是当我使用此版本时,当我按下主页按钮时,它会导致强制关闭。我发现我应该更改为最新版本的支持库,但是 DirectionalViewPager 无法导入:PagerAdapter.DataSetObserver
我该如何解决?
感谢帮助。
我的应用程序使用具有自己的 support-library-v4.jar 的 DirectionalViewPager 库,但是当我使用此版本时,当我按下主页按钮时,它会导致强制关闭。我发现我应该更改为最新版本的支持库,但是 DirectionalViewPager 无法导入:PagerAdapter.DataSetObserver
我该如何解决?
感谢帮助。
看起来范围可能已更改,导致 DVP 库无法工作。有关更多详细信息和解决方法,请参见此处和此处。
将以下类添加到您的项目中(确保包正确,否则这将不起作用):
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);