2014-10-01 77 views
1

我使用应用程序扩展在iOS8中创建自定义GIF键盘。我创建了自定义键盘的布局。我实现了LongPress手势来选择GIF图像,但它不起作用。那么我可以为此做什么或有什么建议?iOS8中的自定义GIF键盘


- (void)textWillChange:(id<UITextInput>)textInput { 
    [self.textDocumentProxy insertText:@"Hi"]; 
} 

我也试图与UITextInputDelegate如上所述。 这种方法也只处理文本追加。但我关心的是在输入区域加载gif或png图像。

回答

2

例如,Popkey正在做的是将点击的GIF复制到粘贴板。

用户然后需要长时间点击他们的富文本字段并将内容粘贴到他们的iMessage中。

3

我已经用长按手势做了一个触摸处理程序的方法。

-(void)tapped:(id)sender 
{ 
    UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; 
    UIImage *image = [UIImage imageNamed:@"img_temp.gif"]; 
    NSData *imgData = UIImagePNGRepresentation(image); 
    [pasteboard setData:imgData forPasteboardType:[UIPasteboardTypeListImage objectAtIndex:0]]; 
} 

我也成为第一响应者。

-(BOOL)canBecomeFirstResponder 
{ 
    return YES; 
} 

我可以复制粘贴板中的文本,但我无法复制.gif或.png图像。

0

您无法直接在输入区域加载gif。为此,您必须将gif复制到粘贴板,然后将gif粘贴到输入区域。

要将gif复制到粘贴板中,需要将其转换为NSData。

这里是Swift 3.0中的演示代码。

let pb = UIPasteboard.general 
let data = NSData(contentsOfURL: url) 
if data != nil 
    { 
    self.pb.setData(data!, forPasteboardType: kUTTypeGIF as String) 
    }