私はボタンとして入れた画像を使ってiOSのカスタムキーボードを構築しようとしています。ボタンを押すと、ボタンにリンクされている画像が、カスタムキーボードビュー内のUiTextViewにロードされる属性付き文字列に入れられます。それは働いている。nsattributedstringを使ってSwiftに画像をテキストとして添付する方法
問題は、アトリビュートされた文字列に新しいイメージを追加すると、文字列内の古いイメージと新しいイメージの両方が、現在押されているイメージに変わるということです。私は文字列の古いイメージが変化している理由を理解できません。
提案がありますか?私はreplaceCharactersInRangeとinsertAttributedStringを使ってみましたが、動作させることはできません。ここでは、コード(のviewDidLoad後)である:
let textAttachment = NSTextAttachment()
let textView = UITextView(frame: CGRectMake(5, 5, 200, 40))
var attributedString = NSMutableAttributedString(string: "")
@IBAction func buttonPressed(button :UIButton) {
let string = button.titleLabel?.text
textAttachment.image = UIImage(named: "\(string!).png")!
textAttachment.image = UIImage(CGImage: textAttachment.image!.CGImage!, scale: 6, orientation: .Up)
let attrStringWithImage = NSAttributedString(attachment: textAttachment)
attributedString.appendAttributedString(attrStringWithImage);
textView.attributedText = attributedString;
}
ありがとうございました!
私は付属の2個の異なるイメージがある場合、どのように私はどちらのIMクリックを認識することができますか?画像の添付ファイルをクリックしたときに何かを印刷するコードを作ったが、画像に応じて異なる動作を実現する必要がある。 –
また、ビデオを添付することはできますか? –