2016-06-23 12 views
0

textfieldattributedTextを追加します。テキストフィールドすぐにテキストフィールドの属性テキストを追加した後に文字を最後に追加します

マイコード:

let emailArray = ["Abraham", "John Doe", "John Smith", "Awesome"] 

func textField(textField: UITextField!, shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool 
{ 
    for value in self.emailArray { 

     print(value) 
     print(textField.text!) 

     if(value.lowercaseString.hasPrefix(textField.text! + string)) 
     { 
      print(range.location) 
      print(value) 
      var attributedText: NSMutableAttributedString = NSMutableAttributedString(string: value) 

      //attributedText.addAttributes([NSFontAttributeName: UIFont.boldSystemFontOfSize(14)], range: NSRange(location: 1, length: 6)) 
      attributedText.addAttributes([NSForegroundColorAttributeName: UIColor.grayColor()], range: NSRange(location: (range.location + 1), length: (value.characters.count - range.location - 1))) 

      textField.attributedText = attributedText 

      print(textField.text) 
     } 
    } 
    return true 
} 

私はtextfield'a'をテープで固定すると、私はtextfieldAbrahamattributedTextを設定した後、私は、emailArrayAbrahamをチェックアウトすることができます。 しかし、問題、textfieldAbrahamaを示した結果であり、textfieldtextField.attributedText = attributedTextが追加行の後にありがとうございます!私は'a'を削除することができますどのように...自動最後に

答えて

0

'a'を追加

return false 
+0

ありがとう、とてもうまくいきます!私は別のquesitonを持っている、私はオートコンプリートをやっている、私は今tableviewを使用したくない。だから私は他の文字を灰色に設定し、「a」だけが黒です。私はカーソルの位置を設定すると思います。あなたは、テーブルビューなしでテキストフィールドオートコンプリートのためのいくつかの提案をしていますか?どうもありがとうございました。 – Coucou

+0

http://stackoverflow.com/questions/7758093/ios-autocomplete-featureを参照してください。それが役に立たない場合は、新しい質問として投稿する必要があります。 – Code

+0

ありがとうございました – Coucou

関連する問題