Activity.OverrideActivityTransition 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
OverrideActivityTransition(OverrideTransition, Int32, Int32) |
使用這個活動自定義活動轉換的動畫。 |
OverrideActivityTransition(OverrideTransition, Int32, Int32, Int32) |
使用這個活動自定義活動轉換的動畫。 |
OverrideActivityTransition(OverrideTransition, Int32, Int32)
使用這個活動自定義活動轉換的動畫。
[Android.Runtime.Register("overrideActivityTransition", "(III)V", "GetOverrideActivityTransition_IIIHandler", ApiSince=34)]
public virtual void OverrideActivityTransition (Android.App.OverrideTransition overrideType, int enterAnim, int exitAnim);
[<Android.Runtime.Register("overrideActivityTransition", "(III)V", "GetOverrideActivityTransition_IIIHandler", ApiSince=34)>]
abstract member OverrideActivityTransition : Android.App.OverrideTransition * int * int -> unit
override this.OverrideActivityTransition : Android.App.OverrideTransition * int * int -> unit
參數
- overrideType
- OverrideTransition
OVERRIDE_TRANSITION_OPEN
此動畫會在開始/輸入活動時使用。 OVERRIDE_TRANSITION_CLOSE
完成/關閉活動時,將會使用此動畫。
- enterAnim
- Int32
要用於傳入活動的動畫資源資源資源標識碼。 不使用動畫使用 0。
- exitAnim
- Int32
要用於傳出活動之動畫資源的資源標識碼。 不使用動畫使用 0。
- 屬性
備註
使用這個活動自定義活動轉換的動畫。 活動仍在運作時隨時可以呼叫此專案。
這是在運行時間覆寫轉換動畫的更強固方法,而不需要依賴 #overridePendingTransition(int, int)
無法用於預測回來。 不過,當系統正在尋找下一個轉換動畫時,來自 #overridePendingTransition(int, int)
的動畫集仍然具有較高的優先順序。
只有在活動轉換正在播放時,才會選擇此方法所設定的動畫資源,且只有在活動轉換時位於任務之上時。 例如,如果我們想要在啟動從活動 A 啟動的活動 B 時自定義開啟轉換,我們應該在 B 的 onCreate overrideType = OVERRIDE_TRANSITION_OPEN
內呼叫此方法,因為活動 B 會位於工作之上。 而且,如果我們想要在完成活動 B 並回到活動 A 時自定義關閉轉換,因為 B 仍然在 A 上方,我們應該在 overrideType = OVERRIDE_TRANSITION_CLOSE
活動 B 中使用 來呼叫此方法。
如果 Activity 已呼叫這個方法,而且它也會透過 Window#setWindowAnimations(int)
設定另一個活動動畫,則系統會從這個方法選擇動畫集。
請注意,Window#setWindowAnimations
#overridePendingTransition(int, int)
如果活動是以 啟動ActivityOptions#makeSceneTransitionAnimation(Activity, Pair[])
,則會忽略這個方法。 另請注意,這個方法只能用來自定義跨活動轉換,但無法自定義完全不可自定義的跨工作轉換,從 Android 11 開始。
的 android.app.Activity.overrideActivityTransition(int, int, int)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
OverrideActivityTransition(OverrideTransition, Int32, Int32, Int32)
使用這個活動自定義活動轉換的動畫。
[Android.Runtime.Register("overrideActivityTransition", "(IIII)V", "GetOverrideActivityTransition_IIIIHandler", ApiSince=34)]
public virtual void OverrideActivityTransition (Android.App.OverrideTransition overrideType, int enterAnim, int exitAnim, int backgroundColor);
[<Android.Runtime.Register("overrideActivityTransition", "(IIII)V", "GetOverrideActivityTransition_IIIIHandler", ApiSince=34)>]
abstract member OverrideActivityTransition : Android.App.OverrideTransition * int * int * int -> unit
override this.OverrideActivityTransition : Android.App.OverrideTransition * int * int * int -> unit
參數
- overrideType
- OverrideTransition
OVERRIDE_TRANSITION_OPEN
此動畫會在開始/輸入活動時使用。 OVERRIDE_TRANSITION_CLOSE
完成/關閉活動時,將會使用此動畫。
- enterAnim
- Int32
要用於傳入活動的動畫資源資源資源標識碼。 不使用動畫使用 0。
- exitAnim
- Int32
要用於傳出活動之動畫資源的資源標識碼。 不使用動畫使用 0。
- backgroundColor
- Int32
如果動畫需要背景,則動畫期間用於背景的背景色彩。 設定為 Color#TRANSPARENT
,不要覆寫預設色彩。
- 屬性
備註
使用這個活動自定義活動轉換的動畫。 活動仍在運作時隨時可以呼叫此專案。
這是在運行時間覆寫轉換動畫的更強固方法,而不需要依賴 #overridePendingTransition(int, int)
無法用於預測回來。 不過,當系統正在尋找下一個轉換動畫時,來自 #overridePendingTransition(int, int)
的動畫集仍然具有較高的優先順序。
只有在活動轉換正在播放時,才會選擇此方法所設定的動畫資源,且只有在活動轉換時位於任務之上時。 例如,如果我們想要在啟動從活動 A 啟動的活動 B 時自定義開啟轉換,我們應該在 B 的 onCreate overrideType = OVERRIDE_TRANSITION_OPEN
內呼叫此方法,因為活動 B 會位於工作之上。 而且,如果我們想要在完成活動 B 並回到活動 A 時自定義關閉轉換,因為 B 仍然在 A 上方,我們應該在 overrideType = OVERRIDE_TRANSITION_CLOSE
活動 B 中使用 來呼叫此方法。
如果 Activity 已呼叫這個方法,而且它也會透過 Window#setWindowAnimations(int)
設定另一個活動動畫,則系統會從這個方法選擇動畫集。
請注意,Window#setWindowAnimations
#overridePendingTransition(int, int)
如果活動是以 啟動ActivityOptions#makeSceneTransitionAnimation(Activity, Pair[])
,則會忽略這個方法。 另請注意,這個方法只能用來自定義跨活動轉換,但無法自定義完全不可自定義的跨工作轉換,從 Android 11 開始。
的 android.app.Activity.overrideActivityTransition(int, int, int, int)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。