У меня странная ситуация.Я хочу, чтобы пользователь выбрал категорию, нажав кнопку внутри UIScrollView.Вот соответствующий код контроллера просмотра страниц (тот, который содержит UIScrollView, сделанный с IB):
- (void)viewDidLoad
{
[super viewDidLoad];
uiScroll.contentSize = CGSizeMake([[SawData shared].categories count]*320,480);
int i = 0;
for (NSString* key in [SawData shared].categories) {
Baton *b = [[Baton alloc] initWithNibName:@"Baton" bundle:nil];
b.view.frame = CGRectMake(i++*320, 0, 320, 480);
[uiScroll addSubview:b.view];
[b release];
}
}
Baton - это новый подкласс UIViewController, содержащий только одну кнопку с действием touchUp, которая печатает некоторую информацию журнала с использованием NSLog.С помощью этого кода я получаю правильно расположенные дубинки рядом.Проблема состоит в том, что нажатие кнопки дает EXC_BAD_ACCESS, когда контроллер представления Batons освобожден.
Если я удаляю [b release];У меня есть наложенные друг на друга дубинки, поскольку i ++ * 320 дает тот же результат (который я проверил, и он правильный).В этом случае нажатие на кнопку работает.
Спасибо за помощь!
iOS SDK 4.3
РЕДАКТИРОВАТЬ 1: После долгих проб и ошибок мне удалось выяснитьчто происходит.Его ширина управления 320px.Если я изменил их на 321 или 319, все работает как надо.Мне не нужно выпускать контроллер для изображения, чтобы заполнить содержимое UIScrollView и нажать кнопку работает.Какого черта это?