我正在创建一个有3个屏幕的应用程序-餐厅,菜单和餐桌。我需要将在屏幕1(餐厅)中生成的餐厅ID推到屏幕2(菜单)和屏幕3(表)。 我可以成功将餐厅ID推到菜单屏幕,但不能推到餐桌屏幕。
Intent intent = new Intent(getApplicationContext(), MenuActivity.class);
intent.putExtra(RESTAURANT_ID, restaurant.getRestaurantID());
startActivity(intent);
当我尝试将餐厅ID推到表格屏幕时,正在创建一个节点,作为“餐厅ID”,而不是唯一的自动生成的餐厅ID。
答案 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