172 похожих чатов

Ребят, а кто-нибудь знает, если ли какой-то способ снять в

симуляторе скриншот не вьюпорта телефона, а всего экрана от начала и до конца? Гуглеж не помог..

27 ответов

28 просмотров

cmd+shift+4 не подходит?)

Anton-Frolov Автор вопроса
Vladimir
cmd+shift+4 не подходит?)

Оно же не скролит экран в симуляторе от начала до конца, может захватить только отображаемый фрагмент

Anton Frolov
Оно же не скролит экран в симуляторе от начала до ...

А, неправильно вопрос понял. Когда-то делал

Сделай снапшот вьюхи и сохрани

Anton-Frolov Автор вопроса
Руслан Лутфуллин
Сделай снапшот вьюхи и сохрани

Вот об этом речь? https://developer.apple.com/documentation/uikit/uiview/1622531-snapshotview Не совсем понимаю, как это поможет?

Да, только не этот, а тот который рисует в контекст.

Anton Frolov
Вот об этом речь? https://developer.apple.com/docu...

Но ты это, учти, если у тебя там коллекция скажем, то очевидно, чего ещё не существует соответственно и рендериться не будет. Тебе придётся увеличить сам размер коллекции до размеров её contentSize.

Anton-Frolov Автор вопроса
Руслан Лутфуллин
Да, только не этот, а тот который рисует в контекс...

Спасибо за идею, попробовал, все равно все ограничивается размерами вьюпорта

Anton-Frolov Автор вопроса
Anton Frolov
Да, конечно

Тогда ты что-то делаешь не так

Anton-Frolov Автор вопроса
Anton Frolov
Я беру bounds.size

А bounds равен размеру экрана? Тогда чего ты ожидаешь?

Anton-Frolov Автор вопроса
Руслан Лутфуллин
А bounds равен размеру экрана? Тогда чего ты ожида...

В смысле таки да, что-то делаю не так, но frame.size тот же результат давал

Anton Frolov
В смысле таки да, что-то делаю не так, но frame.si...

Ты лучше скажи, ты хочешь весь контент какой-то таблицы/коллекции заскринить?

Anton-Frolov Автор вопроса
Руслан Лутфуллин
Ты лучше скажи, ты хочешь весь контент какой-то та...

Да не при чем тут коллекция, давай считать что ее вообще нет, просто 145 лэйблов скажем

Anton Frolov
Да не при чем тут коллекция, давай считать что ее ...

Я скину мальнький пример минут через 10.

https://pastebin.com/V0JiTvcx render(in:) работает без ограничений по размеру у drawHierarchy(in:afterScreenUpdates:)

Руслан Лутфуллин
https://pastebin.com/V0JiTvcx render(in:) работае...

Ну дык условных 145 лейблов же наверняка на чем-то сабклассящем UIScrollView лежат, размер тебе надо не из bounds/frame.size брать, а из contentSize.

Vladimir
Ну дык условных 145 лейблов же наверняка на чем-то...

Если бы ты почитал выше, я уже об этом писал, но человек решил начать с более простого )

Anton-Frolov Автор вопроса

Так и у тебя bounds.size

Anton Frolov
Так и у тебя bounds.size

А ты посмотри, как я задал размер стаквью

Руслан Лутфуллин
А ты посмотри, как я задал размер стаквью

Я хочу до тебя донести, что система рендерит лишь то, что содержится в рамке вьюхи. Если размер контента у тебя выходит за пределы рамки, то тебе нужно увеличить рамку до размеров контента.

Anton-Frolov Автор вопроса
Руслан Лутфуллин
Я хочу до тебя донести, что система рендерит лишь ...

Я это понимаю, просто думал что-то универсальное сделать в виде экстеншена для вьюх, раз уж просто скриншот сделать не получается

Anton Frolov
Я это понимаю, просто думал что-то универсальное с...

Универсального решения тут просто не может быть. Можно попытаться постротиь по следующему принципу, пробежать вглубь по всей иерархии текущей вьюхи, для каждой сабвьюхи/или сабвью сабвьюхи берём её рамку и конвертируем в координты основной вьюхи и по этим же координатам отрисовываем. Общий размер тоже задаётся как максимум таких пар координатам с размером. С таблицей и коллекций такой подход не выйдет, как и для всех вьюх, чей контент просто не выставляется по логике в бесконечной области bounds. Ровно как с примером выше, где стаквью просто не станет располагать правильно оставшиеся лейблы.

Руслан Лутфуллин
Универсального решения тут просто не может быть. ...

https://github.com/TelegramMessenger/Telegram-iOS/blob/674999eed85092b1fdc0badee6b20be8f0c08764/submodules/Display/Source/UIKitUtils.swift#L680 только тебе их напрямую отрисовывать в контекст. Но это всё равно не сильвер буллет.

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
11
У тебя в конфиге нигде нет deny all; или вообще любого deny?
Alexander Sherbakov
10
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
думаешь я не смогу также сделать? мне это просто не удобно
int 💳 𝙖𝙞𝙧 𝙗𝙞𝙜 𝙗𝙤𝙗 🔫 check bio / spam block / AFK / nohello.com / GMT+3
9
Ребят, чет я уже не догоняю... Крч в коде на асм там происходит нечто вроде a+число (a+1, a+2 и т.д.). Но почему строка lea ecx, [edx+1] работает как a+1?? В edx берется адрес...
Alan 🔝 Бэброу
3
Карта сайта