각 페이지/높이가 긴 여러 뷰 (약 30 개)가 포함 된 RecyclerView가 있습니다.프로그래밍 방식으로 뷰에 뷰를 추가하는 것은 매우 느립니다.
RecyclerView 내의 각 페이지에는 가로로 스크롤 할 수있는보기 (첫 번째 가로 스크롤보기에서 약 20보기)와 두 번째 가로 스크롤보기에서 약 10보기가 포함됩니다.
각 RecyclerView는 뷰가 생성 될 때마다 약 30 개의 뷰를 생성 (그리고 팽창)한다는 것을 의미합니다. 이것은 매우 느립니다.
for(int i = 0; i < 10; i++) {
View details = LayoutInflater.from(parent.getContext()).inflate(R.layout.details, parent, false);
viewHolder.container.addView(details);
}
중첩 된 RecyclerViews와 같은 여러 가지를 시도했지만 똑같이 느립니다. 퍼포먼스에 맞지 않고 각 페이지마다 여러 개의 뷰를 생성 할 수있는 좋은 솔루션이 있습니까? (주로 수직으로 스크롤 할 때만 볼 수 있습니다.
지금까지 가장 좋은 해결책은 각 페이지에 대해 RecyclerView + 중첩 된 RecyclerView이고 레이아웃을 적게 만드는 Horizontall Scroll View (20 대신 10 개가 간단 함)입니다.
감사
당신이보기 것을 어디 만듭니 까 (이
parent
가정viewHolder.container
은 동일)? – pskinkRecyclerView Adapter의 onCreateView에서 이러한 성능 저하를 일으키는 것을 발견했을 때 해결 된 것으로 표시 할 것입니다. 그것은 중첩 된 가중치이며, peter answer가 레이아웃이 적절하게 수행 될 때 가장 좋은 것처럼 보입니다. – Mazur
당신은 onCreateViewHolder를 의미합니까? – pskink