iOS8中的自定义GIF键盘

时间:2014-10-01 12:17:11

标签: ios ios8 custom-keyboard ios8-extension

我正在使用app扩展程序在iOS8中创建自定义GIF键盘。我创建了自定义键盘的布局。我实现了LongPress Gesture选择GIF图像,但它不起作用。那么我能为此做些什么或者有什么建议呢?


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

我也尝试过上面提到的UITextInputDelegate。 此方法也仅处理文本追加。但我担心的是在输入区加载gif或png图像。

3 个答案:

答案 0 :(得分: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图像。

答案 1 :(得分:2)

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

然后,用户需要长按其富文本字段并将内容粘贴到其iMessage中。

答案 2 :(得分: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)
  }