2009-05-16 7 views
2

ボタンを押したときにUITextFieldを表示したいと思います。残念ながら、UITextFieldを隠そうとすると、「ibtoolが終了コード5で失敗する」ため、Interface Builderで非表示にしてからhiddenプロパティをNOに設定することはできません。UITextFieldを「表示する」最適な方法

私はこれをコードで実行しようとしますが、何かを見逃したり、このようなことを試みることによって重大なUIエラーが発生するかどうか疑問に思っていますか?それとも単なるバグでしょうか?

答えて

4

IBで非表示にすることができない場合は、field.hidden = YES;を使用してプログラムで行うことができます。これは、viewControllerのviewDidLoadメソッドで行います。次に、ボタンのターゲットアクションでNOに戻します。

1

奇妙ですが、プログラムで追加するだけで、不透明アニメーションで表示することもできます。

0

私はちょうどUITextFieldをIBに追加して、hiddenボックスをチェックしてもクラッシュしませんでした。もちろん、私は3.0ベータ版のSDKを実行しているので、そこで修正されたバグかもしれません。いずれにしても、それを隠しとしてマークし、次にコードセットhidden = NOにマークすることができます。私はそれ以上の情報なしであなたのために働いていない理由はわかりません。

+0

私は2.2 SDKで試してみましたが、同じ結果が得られました。はい、おそらくバグです。 –

1

または、alphaを0.0に設定するだけです。あなたは本当に簡単に変更をアニメーション化することもでき、本当にうまく見えます。

+0

これはよりエレガントに見えます。 HIDDENプロパティのアニメーションが機能していないようです。それはすべてかどうかです。 HIDDENとAlphaのコンボを使用すると、それを隠しておき、起動するまでタッチに反応するのを防ぎます。どうも。 – Meltemi

0

これはバグのようですが、簡単に回避するには、単に空にします。すなわち、IBに文字列値を指定せず、その文字列値を( 'NSLocalizedString()' '

関連する問題