0

온라인 리사이클 뷰를 사용하는 것은 이번이 처음입니다. 스크롤 다운 또는 스크롤 업 후 RecyclerView에 항목 추가

나는 몇 가지 질문이 : 내가 2.how 내가 스크롤을 사용하여 내 목록을 업데이트 할 수 있습니다 동시에 잃지 말고 스크롤 및

를 아래로 스크롤 1.how을 구별 할 수

을 내 다른 항목

3. recyclerview를 업데이트 한 후 어떻게 내 위치를 유지하고 처음으로 돌아 가지 않습니까?

나는 이러한 코드를 recyclerview 용으로 작성했습니다.

CustomListAdapterForPostOrgan

public class AdapterRcycelerViewPersonalOrgan extends RecyclerView.Adapter<AdapterRcycelerViewPersonalOrgan.ViewHolder> { 
private List<User> itemsData; 
public AdapterRcycelerViewPersonalOrgan(List<User> itemsData) { 
    this.itemsData = itemsData; 
} 

// Create new views (invoked by the layout manager) 
@Override 
public AdapterRcycelerViewPersonalOrgan.ViewHolder onCreateViewHolder(ViewGroup parent, 
                     int viewType) { 
    // create a new view 
    View itemLayoutView = LayoutInflater.from(parent.getContext()) 
      .inflate(R.layout.list_row_member_organ, null); 

    // create ViewHolder 

    ViewHolder viewHolder = new ViewHolder(itemLayoutView); 
    return viewHolder; 
} 

// Replace the contents of a view (invoked by the layout manager) 
@Override 
public void onBindViewHolder(ViewHolder viewHolder, int position) { 
    ImageLoader imageLoader = AppController.getInstance().getImageLoader(); 
    // - get data from your itemsData at this position 
    // - replace the contents of the view with that itemsData 
    if (imageLoader == null) 
     imageLoader = AppController.getInstance().getImageLoader(); 

    viewHolder.member__avatar_show_thumbnail.setImageUrl(itemsData.get(position).getAvatar(),imageLoader); 
    viewHolder.member_name.setText(itemsData.get(position).getFirst_name()+" "+itemsData.get(position).getLast_name()); 


} 

// inner class to hold a reference to each item of RecyclerView 
public static class ViewHolder extends RecyclerView.ViewHolder { 

public NetworkImageView member__avatar_show_thumbnail; 

public TextView member_name; 

    public ViewHolder(View itemLayoutView) { 
     super(itemLayoutView); 

     member__avatar_show_thumbnail = (NetworkImageView) itemLayoutView.findViewById(R.id.member__avatar_show_thumbnail); 
     member_name=(TextView) itemLayoutView.findViewById(R.id.txt_member_name_list_member_organ) ; 

    } 
} 


// Return the size of your itemsData (invoked by the layout manager) 
@Override 
public int getItemCount() { 
    return itemsData.size(); 
    } 
} 

private void memberorganhandel(List<User> userList, Page pages) { 

    if(pages.getCurrentPage()>1){ 

    }else{ 

     recyclerview_personal_organ .setLayoutManager(new LinearLayoutManager(this)); 
     AdapterRcycelerViewPersonalOrgan 
       madapter=new 
       AdapterRcycelerViewPersonalOrgan(userList); 
     recyclerview_personal_organ .setAdapter(madapter); 
     recyclerview_personal_organ .setItemAnimator(new DefaultItemAnimator()); 
    } 
} 

답변

0
  • 후 나는 스크롤 및
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { 

    @Override 
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) { 
     //check if dy > 0 then it's scrolling down, otherwise - up 
    } 
}); 
    아래로 스크롤 dinstinguish 수있는 방법 난 당신이 어댑터에서 사용하는 데이터 소스를 수정 snippent 내 첫 번째 코드에서 onScrolled 방법을 내 다른 항목

을 잃지 않는 스크롤을 사용하여 동시에 내 목록을 업데이트 할 수있는 방법

  • 하고, 그런 다음 notifyItemInserted으로 전화하십시오. 의사.

    • recyclerview를 업데이트 한 후 어떻게 내 위치를 유지하고 처음으로 돌아 가지 않습니까?

    두 번째 요점을 참조하십시오. 스크롤을 일으켜서는 안됩니다.

  • +0

    어디에서이 함수를 호출해야합니까?이 함수는 oncreate에 작성했지만 작동하지 않았습니다. –