Как я могу установить изображение в textDocumentProxy с пользовательским расширением клавиатуры iOS 8?

Как мы можем установить изображение вместо текста?

Следующий код предназначен для отображения текста в представлении ввода:

[self.textDocumentProxy insertText:[key currentTitle]];

Мой код вставки для отображения изображения:

NSData *imgData = UIImagePNGRepresentation(image);
[pasteBoard setData:imgData forPasteboardType:[UIPasteboardTypeListImage objectAtIndex:0]];
NSString* newStr = [[NSString alloc] initWithData:imgData encoding:NSUTF8StringEncoding];
[self.textDocumentProxy insertText:[pasteBoard string]];

Я создал монтажный стол с изображениями, которые мне нужно отображать только для отображения изображений в режиме ввода.

Смотрите эту картинку для концепции:

введите здесь описание изображения

Примечание:

Мне нужно выбрать изображение с клавиатуры и показать в окне ввода, чтобы не копировать и вставить из библиотеки.

Если кто-нибудь знает, пожалуйста, ответьте как ответ, или любое предложение также будет приемлемым.

Спасибо!


person Rohit suvagiya    schedule 20.02.2015    source источник
comment
Вы нашли что-нибудь по этому поводу?   -  person Manthan    schedule 25.03.2015
comment
Где брать картинки для загрузки??   -  person Ramakrishna    schedule 08.10.2016
comment
Как вы могли преобразовать NSdata в строку? В моем случае он показывает ноль, когда я конвертирую эти NSdata в строку.   -  person Ramakrishna    schedule 08.10.2016


Ответы (2)


Я не думаю, что можно напрямую добавить изображение с пользовательской клавиатуры. Обходной путь — скопировать изображение на монтажный стол и вставить его в целевую область. (Это не очень приятно, но на самом деле это единственный способ, которым я вижу)

person Julien    schedule 20.02.2015
comment
я выберу изображение на клавиатуре и покажу ввод, а не копирование и вставку - person Rohit suvagiya; 20.02.2015
comment
Почему ? это невозможно ? .. это правильно, и я попробовал это у себя дома, это сработает. - person Hardik Vyas; 04.07.2015

У меня есть решение для этого вопроса, используйте копирование и вставку из буфера обмена.

Код:

UIPasteboard *pasteBoard = [UIPasteboard generalPasteboard];
NSData *data = [self.Videoassets objectAtIndex:btn.tag];
NSLog(@"File size is : %.2f MB",(float)data.length/1024.0f/1024.0f);
[pasteBoard setData:data forPasteboardType:@"public.mpeg-4"];
person Rohit suvagiya    schedule 23.06.2015
comment
прежде всего, у вас есть возможность выбрать изображение в камбуз и функцию копирования и вставки из буфера обмена. - person Rohit suvagiya; 23.06.2015
comment
Давайте продолжим обсуждение в чате. - person Rohit suvagiya; 23.06.2015