2017-06-14 14 views
0

私はSwiftを初めて使っています。アクセシビリティのために私のUILabel要素をUITextField要素に「リンク」したいと思います。スイフト - UILabelには 'labelFor'と同等のものがありますか?

Androidでは、テキスト入力がある場合、ラベルのlabelFor属性を使用して、ラベルを関連要素にリンクすることができます。例えば:

<TextView 
    android:labelFor="@+id/edit_text" 
    android:text="@string/aac_edit_text_about_label" /> 

<EditText android:id="@+id/edit_text" /> 

Similiarlyは、HTMLで、あなたはinputにリンクするlabelfor属性を使用することができます。例えば:

<label for="message">Message</label> 
<input type="text" name="message"> 

はスウィフト/ iOS版でUILabelUITextField(または似フィールド)をアップリンクする同様の属性がありますか?

答えて

1

iOSはラベルと編集フィールドの間に接続を作成しません。代わりに、テキストに直接カスタムアクセシビリティラベルを追加することができます。

let myLabel: UILabel = ... 
let muField: UITextInput = ... 

muField.accessibilityLabel = myLabel.text 

詳細についてはUIAccessibilityプロトコルを参照してください。

いつでもUITextInputをサブクラス化し、そのような接続のサポートを追加できます。

-2

いいえ、このような機能はありません。しかし、イベントハンドラ(TapHandlerなど)をUILabelに登録し、イベントが発生したときにいつでも実行することができます。

関連する問題