【发布时间】:2017-04-14 08:14:11
【问题描述】:
我想从 Firebase 数据库中设置 Image url 的值来查看,但没有找到结果。我认为对于普通的 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?
-
你能告诉我如何存储图像 URL 吗?以上是我的代码..
-
假设
ref是您希望 URL 所在的FirebaseReference和url一个String与您要保存的图像的 url,您可以写ref.setValue( url );
标签: android firebase firebase-realtime-database firebaseui