簡體   English   中英

在android之前的活動中最小化一個活動

[英]Minimizimg an activity in previous activities in android

我正在開發一個支持即時消息的視頻通話組件。 我想添加一個選項,在按下后最小化視頻通話屏幕並返回消息activity以同時執行這兩項操作(類似於 WhatsApp 的功能)。 問題是,我找不到解決方案,因為返回上一個activity將完成當前activity 那么如何override我的onBackpressed()以便我可以最小化而不是完成呼叫屏幕activity (假設將其添加到通知中)並返回到消息activity

你想要做的是所謂的畫中畫

Android 8.0(API 級別 26)允許活動以畫中畫 (PIP) 模式啟動。 PIP 是一種特殊類型的多窗口模式,主要用於視頻播放。 它允許用戶在固定在屏幕一角的小窗口中觀看視頻,同時在應用程序之間導航或瀏覽主屏幕上的內容。

一個非常簡約的例子:

1)在您的AndroidManifest文件中指定哪個活動支持 PIP:

<activity
      android:name=".VideoActivity"
      android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
      android:resizeableActivity="true"
      android:supportsPictureInPicture="true"/>

2)觸發 PIP 模式以響應某些用戶操作,例如在onBackPressed()

override fun onBackPressed() {
   // Ideally you would want to enter PIP while a video is playing, so:
   val isVideoPlaying = // have a condition here that holds true while the video is playing

   if (isVideoPlaying) {
        enterPictureInPictureMode()
   } else {
        super.onBackPressed()
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM