0

私は家の交換アプリに取り組んでおり、共有設定にアクセスするためのコンテキストを取得し、アプリが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()を実行するにはどうすればよいですか?

4

1 に答える 1

1

Contextのコンストラクターにを渡さないのはなぜMyPagerAdapterですか?MyPagerAdapter次のようにのコンストラクタを作成します。

public class MyPagerAdapter extends PagerAdapter
    {
        public Context  context;

        MyPagerAdapter(Context context)
        {
            this.context = context;
        }

        public int getCount()
        {
            return 5;
        }

    }

そして、あなたの活動では、PagerAdapterを次のように初期化するように書く必要があります

MyPagerAdapter adapter = new MyPagerAdapter(this);
于 2013-01-15T03:37:34.937 に答える