0

いくつかのテキスト フィールドとピッカー ビューと 1 つのボタンを含むビューがあります。ボタンをクリックすると、これらすべてのテキスト フィールドとピッカー ビューが同じビューに再び表示されます。最初のビューを取得する方法と同じビューをロードする方法ボタンをクリックすると前のビューに戻ります。

前もって感謝します..

4

3 に答える 3

0

ボタンクリックでサブビュー(テキストフィールドとピッカービュー)を追加するフレームを設定すると、それらのサブビューをメインビューに表示できます。

または、最初にそれらをすべてメイン ビューに配置し、最初は非表示にすることもできます。そして、ボタンをクリックしてそれらを設定しますHidden : NO

于 2012-07-25T06:22:00.117 に答える
0

問題が発生した場合、このコードが役立つかもしれません。ボタンクリックイベントにテキストフィールドのみを追加しています。したがって、別のビューのアイデアが得られると思います。別のビューでも同じことができます。.m ファイルをお渡しします。.h ファイルを書いていただければ幸いです。これが私の.mファイルのようです-

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController
@synthesize btn = _btn; // IBOutlet of UIButton
@synthesize txtFieldOne = _txtFieldOne; // IBOutlet of UITextField
@synthesize txtFieldTwo = _txtFieldTwo; // IBOutlet of UITextField

- (void)viewDidLoad
{
    newYCoordinateForNewTxtFld = 40.0; // newYCoordinateForNewTxtFld is of type CGFloat
    frame = self.txtFieldTwo.frame;    // frame is of type CGRect

    [super viewDidLoad];
}


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return true;

}

// TextField Delegate Method you might required in your project
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField resignFirstResponder];
    return YES;
}

- (IBAction)btnClicked:(id)sender
{

    // I am giving u a simple idea, so written simple code. You can make code more usable with ur view by adding various functions, loops, etc ,etc.
    int tagValue = 0;

    UITextField *newTextField = [[UITextField alloc]initWithFrame:CGRectMake(frame.origin.x, frame.origin.y+newYCoordinateForNewTxtFld, frame.size.width, frame.size.height)];
    newTextField.delegate = self;
    newTextField.tag = tagValue++;
    frame = newTextField.frame;
    newTextField.backgroundColor = [UIColor whiteColor];
    [newTextField setBorderStyle:UITextBorderStyleRoundedRect];
    [self.view addSubview:newTextField];

    newTextField = nil;
    newTextField = [[UITextField alloc]initWithFrame:CGRectMake(frame.origin.x, frame.origin.y+newYCoordinateForNewTxtFld, frame.size.width, frame.size.height)];
    newTextField.tag = tagValue++;
    newTextField.delegate = self;
    frame = newTextField.frame;
    newTextField.backgroundColor = [UIColor whiteColor];
    [newTextField setBorderStyle:UITextBorderStyleRoundedRect];
    [self.view addSubview:newTextField];

}
@end
于 2012-08-08T12:25:25.600 に答える
0

アプローチは次のとおりです。

  1. ビュー コントローラーで: ボタンと UIScrollView を追加します。

  2. すべての TextField とピッカーを含む MyView などの独立したビューを作成します。(これは、xib またはコードを介して作成できます)

  3. コントローラーの ViewDidLoad メソッドで、この MyView を UIScrollView に追加します。

  4. onButtonPressed で、同様に UIScrollView に MyView を追加します。

于 2012-07-25T06:51:48.137 に答える