我已经使用fresco库加载适配器中的图像。但是图像并没有像我预期的那样设置正确。这是我的代码。请帮帮我.提前道谢。
public class HomeListingAdapter_recyler1 extends RecyclerView.Adapter { private Context context; private ArrayList propertyItemList; private ImageLoader mImageLoader; public HomeListingAdapter_recyler1(HomeListingActivity_recycler propertyViews, ArrayList propertyItemList) { Fresco.initialize(propertyViews); this.propertyItemList = propertyItemList; this.context = propertyViews; } @Override public CustomViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View itemLayoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.property_item_layout,parent,false); CustomViewHolder viewHolder = new CustomViewHolder(itemLayoutView); return viewHolder; } @Override public void onBindViewHolder(final CustomViewHolder holder, final int position) { mImageLoader = VolleySingletonPattern.getInstance(context).getImageLoader(); holder.txtPropertyName.setText(propertyItemList.get(position).ville); holder.txtPropertyType.setText(propertyItemList.get(position).bienName); if(propertyItemList.get(position).pieces.equalsIgnoreCase("0")){ holder.txtPropertySurfaceArea.setText(propertyItemList.get(position).surface+" "+context.getString(R.string.meter_square)); }else{ holder.txtPropertySurfaceArea.setText(propertyItemList.get(position).surface+" "+context.getString(R.string.meter_square)+" - "+ propertyItemList.get(position).pieces+" "+context.getResources().getString(R.string.pieces)); } holder.txtPropertyPrice.setText(propertyItemList.get(position).montantLoyer); Uri imageUri; try { if(!TextUtils.isNullOrEmpty(propertyItemList.get(position).photo)) { imageUri = Uri.parse(propertyItemList.get(position).photo); holder.imgPropertyImage.setVisibility(View.VISIBLE); holder.imgPropertyImage.setImageURI(imageUri); } } catch (Exception e) { } } @Override public int getItemCount() { return propertyItemList.size(); } public class CustomViewHolder extends RecyclerView.ViewHolder { SimpleDraweeView imgPropertyImage; public TextView txtPropertyName , txtPropertyType , txtPropertySurfaceArea ,txtPropertyPrice; public CustomViewHolder(View itemView) { super(itemView); imgPropertyImage = (SimpleDraweeView) itemView.findViewById(R.id.image_property); txtPropertyName = (TextView) itemView.findViewById(R.id.txt_property_name); txtPropertyType = (TextView) itemView.findViewById(R.id.txt_property_type); txtPropertySurfaceArea = (TextView) itemView.findViewById(R.id.txt_property_surface_piece); txtPropertyPrice = (TextView) itemView.findViewById(R.id.txt_property_price); } } }
您的imgPropertyImage应该是SimpleDraWeeView
,而不是ImageView。
我一直在使用库来加载适配器中的图像,但图像的设置并不像我预期的那样正确。下面是我的代码:
我正试图让地图在我的Json适配器中工作。但不知何故,我总是收到错误信息: JAVAlang.NullPointerException:尝试调用虚拟方法“void”。所容纳之物上下文空对象引用上的startActivity(android.content.Intent) 这是我的第二个Android项目,我找不到我的错误。我希望你们中的一些人能帮助我。
我正在开发一个画廊屏幕,允许用户从设备中选择一些图像并发送给另一个用户。我正在使用加载图像,但是根据设备的不同,图像加载非常慢,屏幕上的滚动也很慢。 谁知道怎么解决这个问题? 谢谢!
变量'viewholder'、'position'&model'是从内部类访问的,它需要声明为final,但当我将其声明为final时,在适配器中显示错误。我正在使用Firebase 11.2.0请帮助我
但它不是加载图像,我也尝试了不同的URL但相同的结果,所以我错过了...
我得到了一堆我想用fresco加载的抽屉,我想用size来处理这些图像,我怎么用xml用fresco来做呢?或者,如果xml是不可能的,您如何在代码中实现它? 上面的代码不起作用,除非我设置了固定的大小。