我正在尝试使用 PageAdapter。我发现 public Object instantiateItem( View pager, int position )
已被弃用。所以我正在尝试更新但遇到了问题。新定义将减速更改为 public Object instantiateItem( ViewPager pager, int position )
,当我这样做并将其推送到我的设备时,应用程序崩溃了。
这是我的 logcat 输出。
12-26 19:24:30.701: ERROR/AndroidRuntime(25431): FATAL EXCEPTION: main java.lang.UnsupportedOperationException: Required method instantiateItem was not overridden at android.support.v4.view.PagerAdapter.instantiateItem(PagerAdapter.java:175) at android.support.v4.view.PagerAdapter.instantiateItem(PagerAdapter.java:110) at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:649) at android.support.v4.view.ViewPager.populate(ViewPager.java:783) at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1016)
所以我将 @Override
添加到方法调用中,但是当我使用 maven 编译它时,我得到了与我的方法对应的以下输出。
Chronos/ChronosApp/src/com/kopysoft/chronos/view/ClockViewer.java:[67,4] error: method does not override or implement a method from a supertype
我不知道该怎么办。任何建议将不胜感激!
完整的代码可以在这里找到:http://pastebin.com/da5Kqcmg
最佳答案
PagerAdapter.instantiateItem() 中的运行时代码抛出异常,因为它希望您覆盖它。因此,请确保您重写了抛出异常的方法。您可能只想将代码切换回覆盖已弃用的方法,因为这是您的运行时库所期望的。
是否有可能您正在使用较旧的运行时?
关于java - 覆盖 instantiateItem(...) 不会编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8640209/