У меня есть UIImage
, который содержит несколько кадров изображения и продолжительность, которая была нарезана вместе из анимированного GIF-файла. Если я загружу изображение в UIWebView
, он будет оживлять, как ожидалось, но вместо этого я хочу использовать UITextView
. Очевидным выбором является использование TextKit с настраиваемым NSLayoutManger
и многими настраиваемыми атрибутами NSAttributedString
для достижения различных эффектов рисования. У меня есть один UITextView
, который я бы хотел дать NSAttributedString
, который содержит NSTextAttachment
s для всех изображений, которые мне нужны для отображения inline. Он работает отлично, за исключением того, что когда я загружаю один из этих анимированных UIImages
, они не оживляют их рамки. Любые мысли о том, как это сделать? Я придумал теоретический вариант:Анимированный UIImage в UITextView с TextKit
- Для каждого анимированного изображения добавить пользовательский атрибут, определенный
- Когда менеджер компоновки идет рисовать фон, перебирать этот атрибут, чтобы определить местонахождение позиции вложения.
- Обратный звонок в текстовом виде, чтобы создать
UIImageView
с с анимированное изображение, добавить как подвид и называютstartAnimating
У меня есть еще попробовать это, но это довольно Hacky. Мне интересно, есть ли лучший вариант.
В итоге: Я хочу, чтобы оживить UIImage
Внутри UITextView
через NSTextAttachment
Внутри NSAttributedString
без необходимости дополнительных UIImageView
объектов. Вы можете игнорировать тот факт, что это было сделано ранее с помощью UIWebView
. UIImage
имеет свойства (images
, duration
) для настройки анимированных фреймов, которые я сейчас настроил. Если я назначу его UIImageView
, он оживит, если я установил его как NSTextAttachment
, без анимации.
Буду признателен за любые отзывы. Благодаря!
Удивительно то же самое сегодня утром. – yellottyellott
Можете ли вы предоставить скриншот, как он выглядит в WebView, который вы пытаетесь реплицировать с помощью UIImage и UITextView. Это поможет лучше визуализировать его и помочь с ответами. – pteofil
@pteofil Я не могу сделать скриншот, потому что вы не будете знать, что изображение оживляет, оно будет выглядеть как статическое изображение. Чтобы уточнить: я хочу анимировать UIImage внутри UITextView через NSTextAttachment внутри NSAttributedString * без необходимости дополнительных объектов UIImageView. Вы можете игнорировать тот факт, что это было сделано ранее с помощью UIWebView. UIImage имеет свойства (изображения, продолжительность) для настройки анимированных кадров, которые я сейчас настроил. Если я присвою его UIImageView, он оживит, если я установил его как NSTextAttachment, никакой анимации. – afrederick