1

Android で ListView とそのヘッダーに苦労しています。私は ListFragment を使用しており、onViewCreated でこれを行っています:

        View header = getActivity().getLayoutInflater().inflate(R.layout.route_list_header, null);
        header.setLayoutParams(new       ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT,
                ListView.LayoutParams.WRAP_CONTENT));
        getListView().addHeaderView(header);

        RouteAdapter adapter = new RouteAdapter(getActivity(), routes);
        setListAdapter(adapter);
        getListView().setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                MapFragment fragment = new MapFragment();
                fragment.showRoute(routes.get(position - 1).getRoutePoints());
                getActivity().getFragmentManager().beginTransaction().addToBackStack("map")
                        .replace(R.id.content_frame, fragment).commit();
            }
        });

問題なく動作しますが、別のフラグメントに変更してから戻るボタンを押すと問題が発生します。以前 (フラグメントを停止する前) に setAdater を既に呼び出しているため、ヘッダーを再度追加することはできません。私に何ができる?

4

0 に答える 0