我已经在我的控制器实现类中动态创建了一行按钮,并将它们添加到视图中。每个按钮的标题设置为相应的数字;第一个按钮的标题为“1”,第二个按钮的标题为“2”,依此类推。我想对单击按钮标题中的文本做一些事情(对于这个问题,我只想用NSLog输出它。)
这有可能吗?这是我用来制作按钮的一段代码:
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// position of first button to be created
int xPos = 31;
int yPos = 404;
for(int i = 0; i < 7; i++) {
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(xPos, yPos, 30, 30)];
NSString *buttonTitle = [[NSString alloc]initWithFormat:@"%i", i + 1];
[button setTitle:buttonTitle forState:UIControlStateNormal];
[self.view addSubview:button];
[button addTarget: self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchDown];
xPos = xPos + 38;
}
}
- (void)buttonClicked:(id)sender {
// Do something when each button is clicked
// something like: NSLog(the button's title)
}
我在这里创建了一个帐户只是为了提出这个问题,希望我能正确地为这个问题格式化我的代码!如果您对我需要帮助的内容有任何疑问,请随时询问。
答案 0 :(得分:1)
- (void)buttonClicked:(id)sender {
// Do something when each button is clicked
NSLog(@"Button title: %@", [sender titleForState:UIControlStateNormal]);
}