UITableView中的水平UICollectionView不滚动

时间:2015-11-12 17:15:32

标签: ios objective-c uitableview uicollectionview

在我的项目中,我有UITableView个不同类型的单元格。 其中一个单元格包含水平滚动UICollectionView

当我运行项目时,UICollectionView已正确填充,但我无法水平滚动,单击并在此UICollectionView内拖动只允许我垂直滚动桌面视图。

所需的行为是使用UICollectionView在单元格内单击将允许用户水平滚动,单击任何其他单元格允许垂直滚动。

我假设我需要覆盖/传递或禁用此单元格中的某些OnClick事件,但我找不到正确的解决方案。

任何帮助我指向良好方向的人都将不胜感激:)

创建有关TableViewCell的代码如下所示。

@property(nonatomic) HorizontalCollectionViewDelegate *horizontalCollectionViewDelegate;
- (UITableViewCell *) createHorizontalScrollCell:(NSIndexPath *)indexPath tableView:(UITableView *)tableView{
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:myCellIdentifier];
        MyHorizontalScrollingTableCell *myHorizontalScrollingTableCell = (MyHorizontalScrollingTableCell *)cell;

        UICollectionView *horizontalCollectionView = myHorizontalScrollingTableCell.myHorizontalCollectionView;

        //Link collectionView to its delegate
        self.horizontalCollectionViewDelegate = [[HorizontalCollectionViewDelegate alloc] init];
        horizontalCollectionView.delegate = _horizontalCollectionViewDelegate;
        horizontalCollectionView.dataSource = _horizontalCollectionViewDelegate;
        _horizontalCollectionViewDelegate.data = myData;

        //Define the cells in HorizontalCollectionView
        UINib *cellNib = [UINib nibWithNibName:@"CollectionViewCell" bundle:nil];
        [horizontalCollectionView registerNib:cellNib forCellWithReuseIdentifier:@"horizCell"];

        //Define flow of AttachmentsCollectionView
        UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
        [flowLayout setItemSize:CGSizeMake(90, 90)];
        [flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
        [horizontalCollectionView setCollectionViewLayout:flowLayout];

        return cell;
    }

编辑:我在项目的其他地方使用相同的Horizo​​ntalCollectionViewDelegate(只是不在tableview中)并且在那里工作,所以我认为问题不存在。

编辑2 :问题解决了,原来没有问题(见下面的答案),我会在两天内接受我的回答。

1 个答案:

答案 0 :(得分:1)

...解决

原来我只需要向UICollectionView添加更多内容。

使用2或3个元素,单元格未填充整个视图。因为滑动动画没有显示我假设某处出现了错误。

然而,只需添加更多内容即可解决此问题。