2017-05-08 20 views
0

私はUSBキーボードを必要とするアプリケーションを作成しています。 (通常のタッチスクリーンのキーボードは無効になっており、表示されません)。ユーザが初めてこのアプリケーションをインストールするときは、4桁のピンを作成する必要があります。 PINの入力フィールドはパスワードで保護されています(新しい桁が入力されるたびに点が表示されます)。ピンUITextFieldは、4桁の数値を除いてのみ設定されます。他の文字/数字はUITextFieldに追加されません。これは、次のようになります -Caps Lockパスワード保護された画像UITextField

Link to the image.

ここでの問題は、ユーザがキャップがUSBキーボード上のボタンをクリックしたときにロックし、キャップロック画像はUITextFieldのに表示されますです。しかし、フィールドは数字だけを受け入れるので、テキストフィールドに大文字のロックイメージを表示する気にはなりません。キャップロックイメージを削除する方法はありますか?

答えて

1

右ビューにダミービューを追加すると、そのトリックが実行されました。入力いただきありがとうございます。

textField.rightView = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0)) 
1

私が知っているこれを行うためのクリーンな方法はありませんが、キャップのロックが表示されているので、白いイメージを上に置くことによって行うことができます。

このように、キャップロック画像は常に非表示になります。

NSImageViewコントロールをNSSecureTextViewコントロール(UIビルダー)の後に配置して、NSSecureTextViewコントロールが描画された後に画像が描画されるようにしてください。

0

あなたは下記のサンプルコードで指定した方法で、同じようtextfiledに画像を追加することができます。

Swift add icon/image in UITextField

をしかし、あなたのキャップがロックかどうかを確認するために、私はそこだと思う、またはではありませんそれを行うための適切な方法ではありません。あなたが文字を入力するたびに、入力された文字が大文字または小文字の場合は、 "textFieldShouldReturn"メソッドをチェックインすることができます。

関連する問題