2013-07-09 7 views
17

私は一般的にUIButtons/iOSに関する知識を持っています。ios uibutton hidden:これは自動的にボタンを無効にしますか?

あなたがUIButtonを持っているとします。 'hidden'プロパティをYESに設定します。これはもはや見ることができなくなりますよね?しかし、もはや見えなくなったが、もはやクリック可能ではないことに気づいた。つまり、hidden = YESを設定するとenabled = NOに設定されますか?

好奇心が強い。ありがとうございました。

+0

表示されていないため、どのようにクリックできないのですか? – lakesh

+0

質問を書いて応答を待つのではなく、これをテストするのが確実に早いでしょう) –

+0

それは好奇心のためのものだったので、私はそれほど興味がありませんでした。 –

答えて

28

UIButtonと、すべてのコントロールが

など、 hiddenよう UIViewbackgroundColorから共通のプロパティを継承するクラスの参照は、すべてのビューが隠されているならば、それは入力イベントに UIView

クラスの参照を受信しませんと言いますは言う:

隠されたビューがそのウィンドウから消える入力は イベントを受信しません。しかし、それはスーパービューのサブビューのリストに残っており、 はいつものように自動サイズ調整に参加します。サブビューを含むビューを非表示にすると、 これらのサブビューとビューの子孫を隠す効果があります( )。この影響は暗黙的であり、受信者の子孫の隠れた状態を変更しません。

これはHere以上です。

+1

ありがとう。だから、これは疑問です。「有効」と 「userInteractionIsEnabled」の違いは何ですか? –

+1

'enabled'は' UIView'のプロパティではありません。これは 'UIButton'のプライベートプロパティです。 'userInteractionEnabled'は' UIButton'によって継承される 'UIView'のプロパティです。 'userInteractionEnabled'が' NO'に設定されている場合、そのビューまたはボタンの 'UITouch'イベントは無効になります。' enabled'は 'UITouch'ではなく入力のみを無効にします。 –

+0

あなたの次の質問にお答えしますように。 –

0

わかりません。最高の方法はNSLog返すbutton.hiddenだろう

1

はい、それは隠されているときにボタンに触れることはできません。それを触れたい場合はbtn.hidden = NO;にする必要があります。非表示とは、ユーザーの操作を無効にすることです。

1

です。 buttons hiddenプロパティをYESに設定すると、ユーザー操作が無効になります。他のUI要素だけでなく、UIButtonにも当てはまります。 UIView

関連する問題