gpt4 book ai didi

java - 毕加索 - 目标不能为空

转载 作者:行者123 更新时间:2023-11-30 00:10:21 28 4
gpt4 key购买 nike

每当打开一个新 Intent 时,它会在该页面上停留一秒钟,然后应用程序将被强制关闭。有人帮我解决这个运行时错误。

public class FoodDetails extends AppCompatActivity {


ImageView img_food;

String foodId="";
FirebaseDatabase database;
DatabaseReference foods;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_food_details);

database=FirebaseDatabase.getInstance();
foods = database.getReference("foods");

numberButton = (ElegantNumberButton)findViewById(R.id.number_button);
btncart = (FloatingActionButton)findViewById(R.id.btncart);
food_description = (TextView)findViewById(R.id.food_description);
food_name = (TextView)findViewById(R.id.food_name);
food_price = (TextView)findViewById(R.id.food_price);
img_food = (ImageView)findViewById(R.id.img_food);

collapsingToolbarLayout = (CollapsingToolbarLayout)findViewById(R.id.collapsing);

collapsingToolbarLayout.setExpandedTitleTextAppearance(R.style.ExtendedAppbar);
collapsingToolbarLayout.setCollapsedTitleTextAppearance(R.style.CollapsedAppbar);

if(getIntent()!=null)
foodId = getIntent().getStringExtra("FoodId");
if(!foodId.isEmpty()){
getDetailFood(foodId);
}
}

private void getDetailFood(String foodId) {
foods.child(foodId).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Food food = dataSnapshot.getValue(Food.class);
Picasso.with(getBaseContext()).load(food.getImage())
.into(img_food);

collapsingToolbarLayout.setTitle(food.getName());
food_price.setText(food.getPrice());
food_name.setText(food.getName());
food_description.setText((food.getDescription()));
}

@Override
public void onCancelled(DatabaseError databaseError) {

}
});
}

错误的堆栈跟踪,这是错误所在的行在 com.k.menu.FoodDetails$1.onDataChange(FoodDetails.java:63)

    01-14 21:53:25.446 10015-10015/com.k.menu E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.k.menu, PID: 10015
java.lang.IllegalArgumentException: Target must not be null.
at com.squareup.picasso.RequestCreator.into(RequestCreator.java:618)
at com.squareup.picasso.RequestCreator.into(RequestCreator.java:601)
at com.k.menu.FoodDetails$1.onDataChange(FoodDetails.java:64)
at com.google.android.gms.internal.zzegf.zza(Unknown Source)
at com.google.android.gms.internal.zzeia.zzbyc(Unknown Source)
at com.google.android.gms.internal.zzeig.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

我的模型食物课

public class Food {

private String Name,Image,Description,Price,MenuId;

public Food() {
}

public Food(String name, String image, String description, String price, String menuId) {
Name = name;
Image = image;
Description = description;
Price = price;
MenuId = menuId;
}

public String getName() {
return Name;
}

public void setName(String name) {
Name = name;
}

public String getImage() {
return Image;
}

public void setImage(String image) {
Image = image;
}

public String getDescription() {
return Description;
}

public void setDescription(String description) {
Description = description;
}

public String getPrice() {
return Price;
}

public void setPrice(String price) {
Price = price;
}

public String getMenuId() {
return MenuId;
}

public void setMenuId(String menuId) {
MenuId = menuId;
}

最佳答案

实际上,您没有获得任何数据的原因是您的数据库引用。在您的数据库结构中,您有一个名为“Foods”的子项,您正在获取的子项是“foods”。改变

foods = database.getReference("foods");

foods = database.getReference("Foods");

关于java - 毕加索 - 目标不能为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48241398/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com