Horizontally of circular images to show user profile picture

后端 未结 3 926
小鲜肉
小鲜肉 2021-01-19 14:59

I need to show the users profile picture who all are joining in a specified event and it should be in horizontal circular images one after other and after 5 images. it shoul

3条回答
  •  一个人的身影
    2021-01-19 15:21

    Try this here is the working code for java

    RecyclerViewActivity

    public class RecyclerViewActivity extends AppCompatActivity {
    
    
        private  final Integer[] IMAGES = {R.drawable.nilesh, R.drawable.nilesh, R.drawable.nilesh, R.drawable.nilesh,
                R.drawable.nilesh, R.drawable.nilesh, R.drawable.nilesh, R.drawable.nilesh};
        private ArrayList arrayList = new ArrayList();
    
        RecyclerView myRecyclerView;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_recycler_view);
    
            Collections.addAll(arrayList, IMAGES);
    
            myRecyclerView=findViewById(R.id.myRecyclerView);
            myRecyclerView.setLayoutManager(new LinearLayoutManager(this,
                    LinearLayoutManager.HORIZONTAL,false));
            myRecyclerView.addItemDecoration(new OverlapDecoration());
            myRecyclerView.setHasFixedSize(true);
            myRecyclerView.setAdapter(new DataAdapter(this,arrayList));
    
    
        }
    
        public class OverlapDecoration extends RecyclerView.ItemDecoration {
    
            private final static int vertOverlap = -40;
    
            @Override
            public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
                final int itemPosition = parent.getChildAdapterPosition(view);
    
    
                outRect.set(0, 0, vertOverlap, 0);
    
    
            }
        }
    }
    

    activity_recycler_view

    
    
    
        
    
    
    
    

    DataAdapter

    public class DataAdapter extends RecyclerView.Adapter {
    
        private Context context;
        private ArrayList arrayList = new ArrayList();
    
        public DataAdapter(Context context, ArrayList imagesArray) {
            this.context = context;
            arrayList = imagesArray;
        }
    
        @NonNull
        @Override
        public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    
            View imageLayout = LayoutInflater.from(context).inflate(R.layout.aa, parent, false);
            return new ViewHolder(imageLayout);
        }
    
        @Override
        public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
    
            holder.imageView.setImageResource(arrayList.get(position));
    
            if (position == 3) {
                holder.relativeLayout.setVisibility(View.VISIBLE);
                holder.tvCount.setText(String.valueOf(arrayList.size()-4));
            }else {
                holder.relativeLayout.setVisibility(View.GONE);
            }
        }
    
        @Override
        public int getItemCount() {
            return 4;
        }
    
        public class ViewHolder extends RecyclerView.ViewHolder {
    
            RelativeLayout relativeLayout;
            TextView tvCount;
            CircleImageView imageView;
    
            public ViewHolder(View itemView) {
                super(itemView);
    
                relativeLayout = itemView.findViewById(R.id.relative);
                tvCount = itemView.findViewById(R.id.tvCount);
                imageView = itemView
                        .findViewById(R.id.profile_image);
    
    
            }
        }
    }
    

    layout.aa

    
    
    
        
    
        
    
    
            
    
            
    
        
    
    
    

提交回复
热议问题