In Ihrem View-Controller, ein Array für die Textfelder einrichten -
.h -
@property (nonatomic, retain) NSMutableArray *myTextFields;
.m -
#define kScreenWidth 480.0 // or set this up elsewhere according to device, etc
#define kScreenHeight 320.0
#define kTextFieldWidth 150.0
#define kTextFieldHeight 36.0
@synthesize myTextFields;
-(id)init {
self = [super initWithNibName:@"MyViewController" bundle:nil];
if (self) {
myTextFields = [[NSMutableArray alloc] init];
}
return self;
}
-(IBAction)addTextField {
CGFloat x = ((CGFloat) rand()/RAND_MAX) * (kScreenWidth - kTextFieldWidth);
CGFloat y = ((CGFloat) rand()/RAND_MAX) * (kScreenHeight - kTextFieldHeight);
UITextField *theTextField = [[[UITextField alloc] initWithFrame:CGRectMake(x, y, kTextFieldWidth, kTextFieldHeight)] autorelease];
theTextField.tag = [myTextFields count] + 1; // so you know which one is being edited
// set up other text field properties here, like delegate, background, font, etc.
[self.view addSubview:theTextField];
[myTextFields addObject:theTextField];
}
-(IBAction)removeTextField {
if (![myTextFields count]) return;
UITextField *theTextField = [myTextFields lastObject];
[theTextField removeFromSuperview];
[myTextFields removeLastObject];
}
Wenn Sie keine der Textfelder wollte Überlappung, müssen Sie überprüfen, wenn Sie die zufälligen Positionen generieren.
können Sie Ihren Code anzeigen ...... – akk
Ohne Ihre Bemühungen zu zeigen, ist niemand frei, Code für Sie zu schreiben. –