我想从Firebase数据库中设置图片url的值来查看,但没有找到结果。我认为对于一个普通的firebase程序员来说非常容易。请帮助我。如何从Firebase回收站适配器设置图片的值?
这里是我的代码:
Veglist.java
public static class VegViewHolder extends RecyclerView.ViewHolder {
public View mView;
private ImageView postImage;
private TextView quantityBox,postVegName,postPrice,postPriceTag;
private ImageButton reducequantityButton,increaseQuantityButton;
private Button add;
private String mPostKey=null;
String totalCost;
public VegViewHolder(final View itemView) {
super(itemView);
mView = itemView;
add=(Button)mView.findViewById(R.id.add);
quantityBox=(TextView)mView.findViewById(R.id.quantity);
reducequantityButton = (ImageButton) mView.findViewById(R.id.downQuantitybutton);
increaseQuantityButton = (ImageButton) mView.findViewById(R.id.upQuantitybutton);
cartobject.child("Name").setValue(postVegName.getText().toString().trim());
cartobject.child("Image").setValue(postImage.toString()); cartobject.child("Price").setValue(postPrice.getText().toString().trim()); cartobject.child("PriceTag").setValue(postPriceTag.getText().toString().trim()); cartobject.child("Quantity").setValue(quantityBox.getText().toString());
totalCost = String.valueOf(Integer.parseInt(quantityBox.getText().toString()) * Integer.parseInt(postPrice.getText().toString()));
cartobject.child("Total").setValue(totalCost).addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
p.dismiss();
Toast.makeText(mView.getContext(), postVegName.getText().toString().trim() + " successfully added to cart! ", Toast.LENGTH_SHORT).show();
add.setText("Added");
add.setBackgroundColor(Color.parseColor("#FF5625D2"));
}
});
}
});
}
public void setName(String name) {
postVegName = (TextView) mView.findViewById(R.id.vegName);
postVegName.setText(name);
}
public void setPrice(String price) {
postPrice = (TextView) mView.findViewById(R.id.VegPrice);
postPrice.setText(price);
}
public void setPriceTag(String priceTag)
{
postPriceTag=(TextView)mView.findViewById(R.id.PriceTag);
postPriceTag.setText(priceTag);
}
public void setImage(Context context, String image) {
postImage = (ImageView) mView.findViewById(R.id.VegImg);
Picasso.with(context).load(image).into(postImage);
}
}
public void setUpVegAdapter(final Query reference) {
vegRecyclerAdapter = new FirebaseRecyclerAdapter<Veg, VegViewHolder>
(
Veg.class,
R.layout.row_layout_veg,
VegViewHolder.class,
mainReference
)
{
@Override
protected void populateViewHolder(final VegViewHolder viewHolder, final Veg model, int position) {
try {
viewHolder.setName(model.getName());
viewHolder.setPrice(model.getPrice());
viewHolder.setPriceTag(model.getPriceTag());
viewHolder.setImage(getApplicationContext(), model.getImage());
} catch (Exception e) {
Log.e("start error", "useless");
}
}
};
}
我应该用什么形象?
cartobject.child("Image").setValue(??????????);
如果图像来自URL,为什么不存储URL? – Sunshinator
你能告诉我如何存储图像的URL?以上是我的代码.. – Suresh
假设'ref'是'FirebaseReference',你希望URL是'url','url'是'String',你想要保存的图像的URL,你可以写'ref.setValue (url);' – Sunshinator