Я хотел бы создать 10 кнопок программно. Каждая кнопка имеет подпредставление с двумя метками (одна строка и одно целое число).
После того, как я создал эти 10 кнопок в цикле, я хотел бы получить доступ к обеим меткам. Я попытался NSLog метки кнопки с тегом 0, но это не сработало.
Все это кажется немного неуклюжим, поэтому, пожалуйста, поправьте меня, если я никуда не денусь:
for (int i = 0; i < 9; i++) {
UIButton* btn = [[[UIButton alloc] initWithFrame:CGRectMake(55, i*(indexHeight+indexSpacing), indexWidth, indexHeight)] autorelease];
btn.tag = i;
[btn setBackgroundImage:nil forState:UIControlStateNormal];
[btn addTarget:self
action:@selector(buttonTapped:)
forControlEvents:UIControlEventTouchUpInside];
// LABELS
UILabel *btnTitle = [[[UILabel alloc] initWithFrame:CGRectMake(0, 0, indexWidth, indexHeight)] autorelease];
btnTitle.text = @"Empty";
UILabel *pageTitle = [[[UILabel alloc] initWithFrame:CGRectMake(190, 0, 30, indexHeight)] autorelease];
pageTitle.text = @"x";
[indexView addSubview:btn];
[btn addSubview:btnTitle];
[btn addSubview:pageTitle];
}
Это то, что я пробовал, и где моя проблема:
NSLog (@"Accessing label 1 in button with tag 0 in indexView: '%@'", [[indexView viewWithTag:0] btnTitle.text]);
NSLog (@"Accessing label 2 in button with tag 0 in indexView: '%@'", [[indexView viewWithTag:0] pageTitle.text]);
"UILabel создан программно - найти его снова?" - это самый близкий вопрос, который я мог find, но на самом деле это не отвечает на вопрос, как получить доступ к меткам в подпредставлении кнопки.