Nachdem die durchscheinende App Unity integriert hat, ist die Lösung für den transparenten Hintergrund von Unity

Problem mit der Hintergrundtransparenz, verursacht durch eine durchsichtige App

Ich bin vor ein paar Tagen auf ein Problem gestoßen: Die App ist halb. Um den anderen Teil des Hintergrunds nicht schwarz zu machen, werden die folgenden Stilattribute gesetzt

	<item name="android:windowIsTranslucent">true</item>

Gleichzeitig integriert die App Unity, und Unity verwendet ein durchscheinendes Hintergrundbild.
Nach dem Ausführen wird der Unity-Teil der App durch den Desktop angezeigt.

Lösung:
Wenn Unity eine hierarchische Beziehung haben möchte, müssen Sie zunächst z festlegen

			 // surfaceView 透明化
    for (i in 0 until unityPlayer.childCount) {
        if (unityPlayer.getChildAt(i) is SurfaceView) {
            val tmp = unityPlayer.getChildAt(i) as SurfaceView
            tmp.holder.setFormat(PixelFormat.OPAQUE)
            tmp.setZOrderOnTop(true)
            tmp.setZOrderMediaOverlay(true)
        }
    }

Wenn Sie undurchsichtig sein möchten, müssen Sie außerdem das Format festlegen

Sie können den Quellcode von Unity Player sehen

Bildbeschreibung hier einfügen

Ich denke du magst

Origin blog.csdn.net/ligaoyuan8030/article/details/128399948
Empfohlen
Rangfolge