我需要在PagerAdapter中使用PackageManager pm = context.getPackageManager();
,但我不知道如何获取上下文。
public class MyPagerAdapter extends PagerAdapter {
...
}
PagerAdapter中的上下文如何?
答案 0 :(得分:5)
@DeeV的答案意味着你必须自己通过构造函数或通过setter为你的PageAdapter提供一个上下文。然后将其作为字段存储在PageAdapter中,并在需要时将其检索。
答案 1 :(得分:0)
私人ViewGroup _container;
public override Java.Lang.Object InstantiateItem(ViewGroup container, int position)
{
_container = container;
}
private Context GetContext()
{
return (Activity)_container.Context;
}
答案 2 :(得分:0)
不建议提供上下文,这可能导致内存泄漏, 如果需要上下文来访问资源,则可以通过构造函数提供资源。
MyPagerAdapter(val resources: Resources){
}
....
val adapter = MyPagerAdapter(context.resources)