>Java >java지도 시간 >Android 5.0에서 RecyclerView에 머리글과 바닥글을 추가하는 방법은 무엇입니까?

Android 5.0에서 RecyclerView에 머리글과 바닥글을 추가하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-12 17:49:01929검색

How to Add Headers and Footers to a RecyclerView in Android 5.0?

Android 5.0의 RecyclerView에 머리글 및 바닥글 추가

Android 5.0의 RecyclerView는 항목 목록을 표시하는 편리한 방법을 제공합니다. 그러나 목록에 머리글과 바닥글을 추가하는 것은 약간 까다로울 수 있습니다. 이를 달성하는 방법은 다음과 같습니다.

헤더 추가:

  1. 헤더에 대한 새 레이아웃 파일(예: header_layout.xml)을 만듭니다.
  2. RecyclerView의 onCreate() 메소드에서 헤더 레이아웃을 확장합니다. 어댑터:
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
headerPlaceHolder = inflater.inflate(R.layout.header_layout, null, false);
  1. addView() 메서드를 사용하여 LayoutManager에 헤더 보기를 추가합니다.
layouManager.addView(headerPlaceHolder, 0);

바닥글 추가:

  1. 새 레이아웃 파일 만들기 (예: footer_layout.xml) 바닥글용.
  2. RecyclerView 어댑터의 onCreate() 메서드에서 바닥글 레이아웃을 확장합니다.
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
footerPlaceHolder = inflater.inflate(R.layout.footer_layout, null, false);
  1. 바닥글 추가 addView()를 사용하여 LayoutManager를 봅니다. 메서드:
layouManager.addView(footerPlaceHolder);

다양한 LayoutManager에 대한 고려 사항:

  • LinearLayoutManager: addView() 메서드는 머리글 또는 바닥글 보기의 지정된 위치에 레이아웃.
  • GridLayoutManager: 머리글이나 바닥글이 차지하는 범위 수를 제어하려면 새 SpanSizeLookup 클래스를 생성하고 GridLayoutManager에 설정해야 합니다. view.
GridLayoutManager.SpanSizeLookup spanSizeLookup = new GridLayoutManager.SpanSizeLookup() {
    @Override
    public int getSpanSize(int position) {
        if (position == 0 || position == data.size()) {
            return gridLayoutManager.getSpanCount();
        } else {
            return 1;
        }
    }
};
gridLayoutManager.setSpanSizeLookup(spanSizeLookup);

참고:

  • RecyclerView 어댑터의 getItemCount() 메서드는 데이터 항목 수에 숫자를 더한 값을 반환해야 합니다. 추가된 머리글과 바닥글의 수입니다.
  • getItemViewType() 메소드는 항목에 대한 고유 ID를 반환해야 합니다. 머리글, 바닥글 및 일반 데이터 항목.

이 단계를 따르면 Android 5.0 이상의 RecyclerView에 머리글과 바닥글을 쉽게 추가할 수 있습니다.

위 내용은 Android 5.0에서 RecyclerView에 머리글과 바닥글을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.