UITextField上に画像(attributedStringにUIImageをattachmentしたもの)を表示する方法が分かりません。
UITextView上にテキストとして画像を挿入するライブラリはいくつか見つけたのですが、
UITextField上は見つかりませんでした。
知っている人がいたら、教えてほしいです????
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
プロパティはあるので非対応という事ははいと思いますが、確かに以下のサイトを参考にして画像を表示してみようと試みましたが、attributedText
では表示できませんでした。
しかし、attributedPlaceholder
に設定すると表示されました、原因は分かりません。
swift
1import UIKit 2 3class ViewController: UIViewController { 4 5 @IBOutlet weak var textField: UITextField! 6 7 override func viewDidLoad() { 8 super.viewDidLoad() 9 10 let attribute = NSMutableAttributedString(string: "Swift:Image") 11 attribute.insert(UIImage(named: "swift")!, bounds: CGRectMake(0, 0, 20, 20), atIndex: 6) 12 textField.attributedPlaceholder = attribute 13 14 // Not working 15 // textField.attributedText = attribute 16 } 17} 18 19extension NSMutableAttributedString { 20 21 func insert(image: UIImage, bounds: CGRect, atIndex: Int) { 22 23 let textAttach = NSTextAttachment() 24 textAttach.image = image 25 textAttach.bounds = bounds 26 let attribute = NSAttributedString(attachment: textAttach) 27 insertAttributedString(attribute, atIndex: atIndex) 28 } 29}
投稿2016/07/12 04:20
編集2016/07/12 04:28総合スコア8490
0
objectivec
1textField.attributedText = attributedString; 2NSLog(@"textField=%@", textField.attributedText);
として確認してみると、追加したNSTextAttachmentが消えてしまっているので、UITextFieldではNSTextAttachmentに非対応なんじゃないかと思います。
投稿2016/07/12 03:56
編集2016/07/12 04:50総合スコア16731
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
ご回答ありがとうございます。
やはり非対応ですかね????
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/12 04:56
2016/07/12 05:12