Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将一个屏幕中生成的ID推送到另一个屏幕(而不是生成ID的屏幕之后的屏幕)?_Java_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

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

Java 如何将一个屏幕中生成的ID推送到另一个屏幕(而不是生成ID的屏幕之后的屏幕)?,java,android,firebase,firebase-realtime-database,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());

我正在创建一个应用程序,我有3个屏幕-餐厅,菜单和桌子的顺序。我需要将屏幕1(餐厅)中生成的餐厅ID推送到屏幕2(菜单)和屏幕3(桌子)。 我成功地将餐厅ID推送到菜单屏幕,但无法推送到餐桌屏幕

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

当我试图将餐厅ID推送到桌面屏幕时,一个节点被创建为“restaurantID”,而不是唯一的自动生成的restaurantID。

您可以使用广播接收器向多个活动发送数据。

首先从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);
}

这回答了你的问题吗?尝试使用SharedReference?谢谢这个包裹对我有用。