Неверные цвета в экране Compose Multiplatform (CMP).IOS

Программируем под IOS
Ответить
Anonymous
 Неверные цвета в экране Compose Multiplatform (CMP).

Сообщение Anonymous »

Я создаю приложение Compose Multiplatform (CMP) с использованием JetPack Compose для iOS и пытаюсь запечатлеть скриншот композиционного пользовательского интерфейса. Галерея - синий цвет (0xff4f50ee)
Я думаю, что в RGB это изменило место R и b.
Что я делаю
Я использую этот подход для захвата экрана в IOS (Kotlin/vitie):

val renderer = platform.UIKit.UIGraphicsImageRenderer(composeView.bounds)
val image = renderer.imageWithActions { ctx ->
composeView.drawViewHierarchyInRect(composeView.bounds, true)
}
< /code>
Затем я конвертирую полученное Uiimage в Imagebitmap

Код: Выделить всё

fun UIImage.toImageBitmap(): ImageBitmap {
val pngData = UIImagePNGRepresentation(this)!!
val byteArray = ByteArray(pngData.length.toInt()).apply {
usePinned {
memcpy(it.addressOf(0), pngData.bytes, pngData.length)
}
}
return Image.makeFromEncoded(byteArray).toComposeImageBitmap()
}
Но захваченная Imagebitmap заменяет красные и синие каналы в моей идее. Неразрешенные ссылки в Kotlin
Невозможно использовать какую-либо стороннюю зависимость, специфичную для iOS (не допускается взаимосвязь Swift/Objective-C)
Как я могу правильно запечатлеть скриншот jetpack compose ui в ob-yos-yos, без красного канала, и без добавления Swift/ob-ob-sta-os-sta-ob-sta-ob-sta-ob-sta-ob-stuctmy, без кровного канала, и без добавления Swift/ob-ob-p Зависимости?
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/796 ... screenshot
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»