カスタムUITextField / UIButton
-
05-07-2019 - |
質問
私がやろうとしているのは、メールアプリやメッセージアプリで見られるUITextFieldのようなNSTokenFieldを複製することです(連絡先を入力すると、提案が表示されます)。
オートコンプリートが完璧に機能するようになりました。UITextFieldに入力すると、UITableViewがポップアップ表示され、配列内で見つかった一致を表示します。クリックすると、UITextFieldに追加されます。これまでのところこれに本当に満足しています。
私が今遭遇した問題は、コントロールをネイティブアプリのコントロールのように見せることです。結局のところ、デザインがすべてです!
最初の質問は、UITableViewにその影の外観を追加するにはどうすればよいですか? UITextFieldの後ろに沈んでいるように見えます。
第二に、UITextFieldをサブクラス化して、希望どおりの外観にする必要があることは知っていますが、どこから始めればよいのかわかりません。いくつかのポインタまたはサンプルは素晴らしいでしょう!
最後に、テキスト用のスペースと青のグラデーションを持つカスタムUIButtonを作成し、それをUITextFieldに追加する必要があると思います。 UITextFieldと同じ問題、UIButtonをサブクラス化する方法(描画と詰め込みに必要なメソッド)やUITextFieldでバックスペースをクリックするとボタンがUITextFieldに追加される方法が本当にわからないハイライト表示され、バックスペースが再度クリックされた場合は削除されます(NSTokenFieldの正確な動作)。
ちょうど私が話していることを見ることができるように画像を含めました: http://www.thermoglobalnuclearwar.com/stuff/mail.jpg
私はJoe Hewitts Three20プロジェクトを見てきましたが、それについて頭や尾を作ることができませんでした。 彼のコードを自分のコードにドラッグするだけで何が起こっているのかわからないのではなく、非常に簡単に始めて、起こっていることすべてを理解したいです!
ご協力ありがとうございます!
ありがとう、 トム。
解決 2
OKそれにラベルを付けます。それは素晴らしいですね!
最後のことは、コントロールのような青いNSTokenです。最も簡単なことは、UIViewをサブクラス化し、その中に青いグラデーションとラベルを描くことだと思い始めました。これにより、さらにいくつかの質問があります。
これを見つけました: http://github.com/leonho/iphone-libs / tree / master これはすてきな丸みを帯びたビューを描画し、数字ではなくテキストを追加するように適応しました。どのようにすればよいかわかりませんが、色。
その後、UITextFieldに丸みを帯びたビューを追加し、カーソルを移動し、カーソルがビューに到達したときにビューを削除する方法を見つけるだけの問題がありますが、必要に応じてそれに取り組みます。
他のヒント
Three20ライブラリの使用を検討しましたか?それには、あなたが望むことをするコントロール(TTPickerTextView)が含まれています。
ウェブサイトの説明に記載されているとおり
TTPickerTextField は先行入力UITextFieldです。入力すると、データソースが検索され、 先行入力オプションを選択すると、テキストの流れにバブルが追加されます。私はこれを メッセージ受信者の名前を選択するためのTTMessageController。
少なくとも、ソースコードは、さまざまな視覚効果を実現する方法についてのポインタを提供する可能性があります。