0

私は基本的にメイン アクティビティとビュー ページャー フラグメントを備えたランチャーであるアプリを持っています。アプリからアプリを起動し、何らかの方法で on create fragment 関数を返すとアプリが強制終了されることに気付きました。私のメインアクティビティ関数を作成します。

最初にメインアクティビティを使用してすべてのアプリケーションのリストを取得し、次に各ページャービューフラグメントがメインリストからサブリストを取得するため、最終的にアプリがクラッシュします。Android は最初にメイン アクティビティの作成時に実行され、次にフラグメントの作成時に実行されるため、アプリは初めて実行されたときに正常に実行されます。

どうすればこれを解決できますか?onCreate Main Activity 関数を最初に呼び出す方法はありますか? または、これを行うより良い方法はありますか?

短いリストを作成しようとすると、アプリは不正な引数の例外を返します。メイン リストは、アプリに戻ったときにメイン アクティビティでのみ満たされるため、メイン リストは空で、例外が発生します。

コード:

`

    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View view = inflater.inflate(R.layout.grid, null);

        GridView gridview = (GridView) view.findViewById(R.id.gridview);

        int starterPosition;

        starterPosition = 16 * position;
        int enderPosition = starterPosition + 16;

        if (enderPosition > appsList.size()) {
            enderPosition = appsList.size();
        }


        ArrayList<App> shorterList = new ArrayList<App>(appsList.subList(
                starterPosition, enderPosition));

        final AppLauncherAdapter grid = new AppLauncherAdapter(ctx, shorterList);

        gridview.setAdapter(grid);

        gridview.setSelector(R.color.trans);


        return gridview;
    }

`

4

1 に答える 1

2

onActivityCreatedこの目的のために特に使用する必要があるというメソッドがあります。onActivityCreatedは常にActivity'sonCreateメソッドの後に呼び出されます。

于 2012-09-03T14:55:16.597 に答える