我正在尝试编写一个自定义FragmentPagerAdapter
类以用于 aViewPager
和 ActionBarSherlock。我想覆盖该getItemId()
方法,因为我有不同的选项卡可以根据应用程序的状态来来去去。但是该getItemId()
方法在android-support-v4.jar中包含的实现中不存在FragmentPagerAdapter
(我使用的是ActionBarSherlock 4.1.0)。我下载了 4.2.0,但它似乎有一个相同的 android-support-v4.jar。
据我所知,getItemId() 已于 5 月 10 日添加到 Android 支持库中。
有没有办法来解决这个问题?
- 编辑 -
也许 Android 文档与支持库不同步?
以下是说明 v4 支持库具有 getItemId() 的文档的链接:http: //developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html#getItemId (int )
但我刚刚从 Android SDK Manager (Android Support Library Rev 11) 下载了最新的 android-support-v4.jar。jar 与 ABS 不同,但它似乎仍然不包含 getItemId() 方法。
添加 getItemId() 的更改似乎已进入 v13 库?见https://android.googlesource.com/platform/frameworks/support/+/1a1c2acbc15f8bc9dba05d09dcb18e340474e1c6%5E!/
这是我项目中的一些代码:
import android.support.v4.app.FragmentPagerAdapter;
import com.actionbarsherlock.app.ActionBar;
public class TabsAdapter extends FragmentPagerAdapter implements
ActionBar.TabListener, ViewPager.OnPageChangeListener
{
...
// This fails to compile:
// The method getItemId(int) of type TabsAdapter must override or implement a supertype method
@Override
public long getItemId(int position) {
return 0; // TODO
}
}