如何将一个屏幕中生成的ID推送到另一屏幕(而不是紧接生成iD的屏幕之后的屏幕)?

时间:2019-12-30 06:03:15

标签: java android firebase firebase-realtime-database

我正在创建一个有3个屏幕的应用程序-餐厅,菜单和餐桌。我需要将在屏幕1(餐厅)中生成的餐厅ID推到屏幕2(菜单)和屏幕3(表)。 我可以成功将餐厅ID推到菜单屏幕,但不能推到餐桌屏幕。

Intent intent = new Intent(getApplicationContext(), MenuActivity.class);
            intent.putExtra(RESTAURANT_ID, restaurant.getRestaurantID());
            startActivity(intent);

当我尝试将餐厅ID推到表格屏幕时,正在创建一个节点,作为“餐厅ID”,而不是唯一的自动生成的餐厅ID。

2 个答案:

答案 0 :(得分:1)

首先从intent中检索发送的数据,然后将其用于在启动时传递给另一个活动

Bundle extras = getIntent().getExtras();
if (extras != null) {
    String componentName = extras.getString(RESTAURANT_ID);

    Intent intent = new Intent(this, TableActivity.class);
    intent.putExtra(RESTAURANT_ID, componentName);
    startActivity(intent);
}

答案 1 :(得分:0)

您可以使用广播接收器将数据发送到多个活动。 Passing Data from Broadcast Receiver to another Activity