Sim*_*nRH -2 cocoa-touch objective-c ios
我想动态生成按钮.下面的代码生成2个按钮.但是我怎样才能编写一个循环来生成批量(100或1000)按钮.
- (void)viewDidLoad
{
//allocate the view
self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
//set the view's background color
self.view.backgroundColor = [UIColor whiteColor];
//create the buttons
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//set the position of the button
button.frame = CGRectMake(100, 170, 100, 30);
button1.frame = CGRectMake(200, 170, 100, 30);
//set the button's title
[button setTitle:@"Click Me!" forState:UIControlStateNormal];
[button1 setTitle:@"Click!" forState:UIControlStateNormal];
//listen for clicks
[button addTarget:self action:@selector(buttonPressed)
forControlEvents:UIControlEventTouchUpInside];
[button1 addTarget:self action:@selector(buttonPressed)
forControlEvents:UIControlEventTouchUpInside];
//add the button to the view
[self.view addSubview:button];
[self.view addSubview:button1];
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
-(void)buttonPressed {
NSLog(@"Button Pressed!");
}
Run Code Online (Sandbox Code Playgroud)
我真的很震惊,你设法在不知道如何进行for循环的情况下完成了那里的代码.
除此之外,不要在viewDidLoad中这样做.
//allocate the view
self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
//set the view's background color
self.view.backgroundColor = [UIColor whiteColor];
Run Code Online (Sandbox Code Playgroud)
UIViewController加载自己的视图,你在这里覆盖它没有真正的原因.
-(void)viewDidLoad {
[super viewDidLoad];
for(int i = 0; i < 1000; i++) {
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button setFrame:CGRectMake(100 + i, 170 + i, 100, 30)];
[button setTitle:@"Click Me!" forState:UIControlStateNormal];
[button addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchUpInside];
[[self view] addSubview:button];
}
}
-(void)buttonPressed {
NSLog(@"Button Pressed!");
}
Run Code Online (Sandbox Code Playgroud)
注意:请不要这样做......我不知道为什么你会想要1000个UIButton,但是你应该有一个更好的方法来做你想做的事情.
| 归档时间: |
|
| 查看次数: |
3550 次 |
| 最近记录: |