Il s'agit peut-être d'un doublon, mais la réponse appropriée n'est toujours pas disponible. Je me suis référé à ce y ce y ce
Comme indiqué dans les liens, je souhaite mettre en place une vue recyclée qui soit circulaire, c'est à dire
[vue 1]-[vue 2]....-[vue N-1]-[vue N]-[vue 1].....et ainsi de suite
Puisqu'il n'y a pas de méthodes de surcharge pour obtenir la vue et l'élément dans recyclerview, je ne peux pas réussir. ne peux pas réussir.
Merci d'avance !
mon code adaptateur de recycleur
public class HorizontalRecyclerAdapter extends RecyclerView.Adapter<HorizontalRecyclerAdapter.ProductViewHolder> {
List<Product> products;
private Context mContext;
ImageLoader imageLoader;
HorizontalRecyclerAdapter(List<Product> products, Context mContext) {
this.products = products;
this.mContext = mContext;
}
@Override
public ProductViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.product_layout, parent, false);
return new ProductViewHolder(v);
}
@Override
public void onBindViewHolder(final ProductViewHolder holder, int position) {
imageLoader = SingletonRequestQueue.getInstance(mContext).getImageLoader();
String URL = products.get(position).getProductImageUrl();
holder.progressBar.setVisibility(View.VISIBLE);
/* to hide the progress bar after image response */
imageLoader.get(URL, new ImageLoader.ImageListener() {
@Override
public void onResponse(ImageLoader.ImageContainer response, boolean isImmediate) {
if (response != null) {
Bitmap bitmap = response.getBitmap();
if (bitmap != null) {
holder.progressBar.setVisibility(View.GONE);
}
}
}
@Override
public void onErrorResponse(VolleyError error) {}
});
holder.itemImage.setImageUrl(URL, imageLoader);
holder.itemName.setText(products.get(position).getProductName());
holder.itemPrice.setText("₹ "+products.get(position).getProductPrice());
holder.sellerLogo.setImageResource(products.get(position).getProductSellerId());
}
@Override
public int getItemCount() {
return products.size();
}
public static class ProductViewHolder extends RecyclerView.ViewHolder {
NetworkImageView itemImage;
NetworkImageView sellerLogo;
TextView itemName;
TextView itemPrice;
ProgressBar progressBar;
public ProductViewHolder(View itemView) {
super(itemView);
itemImage = (NetworkImageView) itemView.findViewById(R.id.product_image);
sellerLogo = (NetworkImageView) itemView.findViewById(R.id.product_seller);
itemName = (TextView) itemView.findViewById(R.id.product_name);
itemPrice = (TextView) itemView.findViewById(R.id.product_price);
progressBar = (ProgressBar)itemView.findViewById(R.id.network_image_progressbar);
}
}
}