我向我的ListFragment添加了一个标题,但是没有出现标题。我尝试添加onCreate和onStart,但是我已经设置了适配器。我在这里找到了这个Best place to addHeaderView in ListFragment,但是它无效。

@Override

     public View onCreateView(LayoutInflater inflater, ViewGroup container,
                    Bundle savedInstanceState) {
                View v = getActivity().getLayoutInflater().inflate(R.layout.header,
                        null);
                container.addView(v,0);
                rla = new RowListAdapter(getActivity().getLayoutInflater(),
                        R.layout.itemlayout, rl);
                setListAdapter(rla);
                return super.onCreateView(inflater, container, savedInstanceState);
            }

    @Override
    public void onStart() {
        super.onStart();
        getListView().setBackgroundResource(R.color.tostadoclaro);
        getListView()
                .setDivider(getResources().getDrawable(R.drawable.divider));

        getListView().setDividerHeight(4);
    }

解决方案!!!
@Override
public void onActivityCreated(Bundle savedInstanceState) {
    View v = getActivity().getLayoutInflater().inflate(R.layout.header,
            null);
    this.getListView().addHeaderView(v);
    rla = new RowListAdapter(getActivity().getLayoutInflater(),
            R.layout.itemlayout, rl);
    setListAdapter(rla);
    super.onActivityCreated(savedInstanceState);
}
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState){// Empty. Use original.}

最佳答案

不要将 View 添加到容器中。使用addHeaderView(v)。

10-07 19:23
查看更多