Я просто пытаюсь сделать простой ваниль UICollectionView
внутри UIViewController
. Все работает по желанию, за исключением того, что ничего не происходит, когда я касаюсь CollectionViewCell
, чтобы выбрать его. Вот кости моего кода:UICollectionView didSelectItemAtIndexPath никогда не звонил, хотя делегат установлен
@interface CreateNewFieldViewController() <UITextFieldDelegate, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout>
- (void) viewDidLoad {
...
UICollectionViewFlowLayout* flowLayout = [[UICollectionViewFlowLayout alloc]init];
flowLayout.itemSize = CGSizeMake(self.width*.15, self.width*.15);
[flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
flowLayout.minimumInteritemSpacing = 30;
flowLayout.minimumLineSpacing = 30;
self.collectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(self.width*.1, self.height*.2, self.width*.8, self.height*.3) collectionViewLayout:flowLayout];
self.collectionView.delegate = self;
self.collectionView.dataSource = self;
self.collectionView.allowsSelection = YES;
self.collectionView.allowsMultipleSelection = NO;
self.collectionView.bounces = YES;
self.collectionView.alwaysBounceHorizontal = YES;
self.collectionView.alwaysBounceVertical = YES;
[self.collectionView registerClass:[CollectionViewCell class] forCellWithReuseIdentifier:@"cell"];
[self.view addSubview:self.collectionView];
self.collectionView.backgroundColor = [UIColor clearColor];
...
}
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
self.fieldNameInput.text = self.backgroundImageNames[indexPath.row];
NSLog(@"recording this: %@", self.fieldNameInput.text);
}
Источник данных и расположение рабочего потока велика, но по какой-то причине, когда я нажимаю на ячейки, ничего не происходит. Я не вижу никаких операторов журналов, поэтому я знаю, что didSelect
не вызывается. Что мне не хватает?
Похоже, что это может быть ловушкой для непосвященных, хотя я до сих пор не могу найти, что это такое. См. это blog post.
Спасибо за это предложение, но в моем проекте это еще не дает никакого эффекта. – helloB