![](/img/trans.png)
[英]How to override shared element smooth transition in activity's on back pressed?
[英]How to override the transition from an activity's context?
我想從以下內容覆蓋頁面到頁面的過渡:在當前活動中,我正在使用當前活動的上下文在后台運行另一個類的方法。 從該類中,我打開2種可能的活動之一(使用上下文,但不直接通過我的初始活動)。 有沒有辦法覆蓋從初始活動到兩個新活動的頁面轉換? 因為overridePendingTransition
只能在活動對象上運行,所以我不能在兩種情況下都只調用此方法,因為這些情況不是實際活動的一部分。
抱歉,如果不清楚,請隨時提出問題以解決所有問題。 我對意圖和上下文的定義仍然不是100%。
//depending on if there is a warning it will either display the warning screen or skip it
if(dairy)
{
Intent intent_warn = new Intent(context, WarningScreen.class);
intent_warn.putExtra("Name", str_name);
intent_warn.putExtra("Size", str_size);
intent_warn.putExtra("Price", str_price);
intent_warn.putExtra("Carbs", str_carbs);
intent_warn.putExtra("Protein", str_protein);
intent_warn.putExtra("Fiber", str_fiber);
intent_warn.putExtra("Sugar", str_sugar);
intent_warn.putExtra("SatFat", str_satFat);
intent_warn.putExtra("TotFat", str_totFat);
intent_warn.putExtra("Cholesterol", str_cholesterol);
intent_warn.putExtra("Sodium", str_sodium);
intent_warn.putExtra("Potassium", str_potassium);
intent_warn.putExtra("Calories", str_calories);
intent_warn.putExtra("Warning", "Contains Dairy");
intent_warn.putExtra("WarningRed", true);
Log.e("Warning",intent_warn.getExtras().getString("Warning"));
context.startActivity(intent_warn);
context.overridePendingTransition(R.layout.fade_in, R.layout.fade_out);
}
else
{
Intent intent_menu = new Intent(context, DisplayScreen.class);
intent_menu.putExtra("Name", str_name);
intent_menu.putExtra("Size", str_size);
intent_menu.putExtra("Price", str_price);
intent_menu.putExtra("Carbs", str_carbs);
intent_menu.putExtra("Protein", str_protein);
intent_menu.putExtra("Fiber", str_fiber);
intent_menu.putExtra("Sugar", str_sugar);
intent_menu.putExtra("SatFat", str_satFat);
intent_menu.putExtra("TotFat", str_totFat);
intent_menu.putExtra("Cholesterol", str_cholesterol);
intent_menu.putExtra("Sodium", str_sodium);
intent_menu.putExtra("Potassium", str_potassium);
intent_menu.putExtra("Calories", str_calories);
intent_menu.putExtra("Warning", "Contains no allergens");
intent_menu.putExtra("WarningRed", false);
Log.e("Warning",intent_menu.getExtras().getString("Warning"));
context.startActivity(intent_menu);
context.overridePendingTransition(R.layout.fade_in, R.layout.fade_out);
}
我嘗試使用context.overridePendingTransition...
但是不能在上下文上完成。 但是,以下代碼在從另一個Activity(而不是上下文項)運行時可以工作:
startActivity(letsMenu);
overridePendingTransition(R.layout.fade_in, R.layout.fade_out);
只需將上下文包裝如下:
((Activity)context).overridePendingTransition(R.layout.fade_in, R.layout.fade_out);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.