Java 如何将一个屏幕中生成的ID推送到另一个屏幕(而不是生成ID的屏幕之后的屏幕)?
我正在创建一个应用程序,我有3个屏幕-餐厅,菜单和桌子的顺序。我需要将屏幕1(餐厅)中生成的餐厅ID推送到屏幕2(菜单)和屏幕3(桌子)。 我成功地将餐厅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());
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?谢谢这个包裹对我有用。