Android Картинка в картинке Портретный режим

Я пытаюсь реализовать режим «картинка в картинке», но пока в приведенном примере единственная ориентация, которую я вижу, — это альбомный режим.

https://developer.android.com/guide/topics/ui/картинка-в-картинке

Я пытаюсь сделать функционально похожее на приложение WhatsApp. Когда пользователь принимает вызов и переходит в режим «картинка в картинке», окно отображается в портретном режиме, чтобы пользователь мог хорошо видеть собеседника. Буду признателен за мысли о том, как я могу это реализовать.

override fun onPictureInPictureModeChanged(isInPictureInPictureMode: Boolean,
                                           newConfig: Configuration) {
    if (isInPictureInPictureMode) {
        // Hide the full-screen UI (controls, etc.) while in picture-in-picture mode.
    } else {
        // Restore the full-screen UI.
    }
}

person Maria    schedule 26.10.2020    source источник


Ответы (1)


Для настройки Окно PIP.

Чтобы иметь портретное окно PIP, используйте соотношение сторон ~ 2/3. (Соотношение сторон должно быть между 0,42 и 2,39.)

override fun onUserLeaveHint() {
    enterPictureInPictureMode(PictureInPictureParams.Builder()
            .setAspectRatio(Rational(2, 3))
            .build())
}

Пример:

pip-example

person Matt Ke    schedule 27.10.2020