我正在开发一个家居更换应用程序,我需要获取上下文来访问共享首选项,并获取我的应用程序应该在 getCount() 上使用它的屏幕数量。
在过去的几个小时里,我一直在用头撞墙,但我不知道如何在 getCount() 被触发之前获取上下文。
这是我的代码:
public class MyPagerAdapter extends PagerAdapter {
public Context context;
public int getCount() {
return 5;
}
@Override
public Object instantiateItem(View container, int position) {
Context context = container.getContext();
}
我正在获取 instatiateItem 上的上下文,但 instatiateItem 在 getCount() 之后运行,有没有办法直接在 pageAdapter 上获取上下文?或者如何在 getCount() 被触发之前运行 getContext() ?
最佳答案
为什么不在MyPagerAdapter
的构造函数中传递Context
?
创建MyPagerAdapter
的构造函数如下:
public class MyPagerAdapter extends PagerAdapter
{
public Context context;
MyPagerAdapter(Context context)
{
this.context = context;
}
public int getCount()
{
return 5;
}
}
在您的 Activity 中,您应该将 PagerAdapter 初始化为
MyPagerAdapter adapter = new MyPagerAdapter(this);
关于Java如何在getCount()中获取PageAdapter中的上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14330717/