2011-12-29 8 views
0

MonoTouchを使用する方法を学習しています。私は2つのボタンを持つ画面があります。ユーザーがボタンをクリックすると、プログラムで作成したビューが表示され、そのビューを非表示にします。私はこれが正常に動作している。私の意見の1つでは、テキストボックスを表示したいと思います。作成したテキストボックスをテキストボックスに正しく追加すると、表示されません。私の初期化コードはここに表示されます:MonoTouchを使用してUIViewにUITextFieldをプログラムで追加します。

RectangleF rectangle1 = new RectangleF(0, 100, 200, 200); 
this.view1 = new UIView(rectangle1); 
this.View.Add(view1); 

RectangleF rectangle2 = new RectangleF(0, 0, UIScreen.MainScreen.Bounds.Width, 300); 
this.view2 = new UIView(rectangle2); 
this.view2.Hidden = true; 
this.view2.BackgroundColor = UIColor.Green; 

UITextField textField = new UITextField(); 
textField.Bounds = new RectangleF(20, 13, 200, 31); 
view2.AddSubView(textField); 

this.View.Add(view2); 

私は間違っていますか? textFieldが表示されないのはなぜですか?

ありがとうございました!

答えて

0

には、削除しようとか、あなたは私はあなたが必要とするすべての隠されたとして、あなたがVIEW2をマークするのでそれはおそらくだ

this.view2.AddSubView(textField); 
or  
this.View.AddSubview(view2); 
0

であると考えているビュー を追加する方法の順序を変更しようとしています。したがって、全体のビューは表示されません。 this.view2.Hidden = trueを削除すると、テキストフィールドが表示されます。

1

交換

textField.Bounds =新しいRectangleF(20、13、200、31)。

textField.Frame =新しいRectangleF(20、13、200、31)と

1

あなたのテキストフィールドはサブビュー2表示2です。 view2.Hidden = trueを設定しているので、テキストフィールドを含むView2のすべてのサブビューも隠しています。

あなたが気を付けなければならないことは、どのようなビューが「トッ​​プ」なのかです。 UIViewのSendSubviewToBack(UIView view)BringSubviewToFront(UIView view)メソッドで遊んでみてください。

関連する問題