相关疑难解决方法(0)

UICollectionView单元子视图不会调整大小

在a中CollectionView,某些单元格应该有一个额外的子视图或图层.该CollectionView可以告诉调整它的细胞,因此,所有的内容需要适当调整.

目前,从包含具有imageview的单元的笔尖初始化单元; 单元格nib链接到自定义UICollectionViewCell子类,只执行init.检查自动调整子视图.

CollectionView被告知通过导出和返回的值,以调整细胞sizeForItemAtIndexPath:.我已经子类化了一个FlowLayout,但它只指定ScrollDirectionInsets.

所有这一切都很好.问题:如何将子视图/图层添加到单元格,以便它也正确调整大小?我尝试使用translatesAutoresizingMaskIntoConstraintsoff 添加子视图和图层,但这些根本不会自动更改大小.还尝试使用代码框架/视图而不是nib.

我现在得到的最好的是cell.contentView.layer我添加的子层cellForItemAtIndexPath:; 那就是"手动"通过存储单元的大小frame.sizesizeForItemAtIndexPath:,这不仅难看而且与具有各种尺寸的不同小区的子层结束.

任何帮助赞赏!

size cell subview ios uicollectionview

39
推荐指数
5
解决办法
4万
查看次数

获取uicollectionviewcell的触摸位置

我试图在所选的UICollectionviewCell中获取触摸位置.我有一个UIViewController,vc,包含一个UICollectionView,collectionView作为它的视图.collectionView内部是UICollectionViewCells.vc符合UICollectionViewDelegate所以最好我想在委托回调中获取触摸位置collectionView:(UICollectionView *)collection didSelectItemAtIndexPath:(NSIndexPath *)indexPath,(如果可能的话).有关如何做到这一点的任何建议?谢谢.

+--------------------------------------------+
| UICollectionView                           |
|                                            |
|  +-------------+       +-------------+     |
|  |  UICollec   |       |             |     |
|  |  tionView   |       |             |     |
|  |  Cell       |       |     *<---------------<Touch here
|  |             |       |             |     |
|  +-------------+       +-------------+     |
|                                            |
+--------------------------------------------+    
Run Code Online (Sandbox Code Playgroud)

*更新* 我最终检测到UIViewCollectionView使用UIGestureRecognizer的点击,然后将点击点转换为UICollectionViewCell视图.如果有更好的方法,请告诉我.谢谢.

-(void) viewDidLoad {
    UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
    [tapGesture setNumberOfTapsRequired:1];
    [self.collectionView addGestureRecognizer:tapGesture];
}

-(void) handleTap:(UIGestureRecognizer*) gesture …
Run Code Online (Sandbox Code Playgroud)

objective-c ios uicollectionview uicollectionviewcell

9
推荐指数
1
解决办法
5012
查看次数

UICollectionViewCell中的UIScrollView不起作用

我有UICollectionView一个习惯UICollectionViewCell.该UICollectionView水平滚动,每个单元占据所有可见的画面.

UICollectionViewCell有一个UIView子视图,这反过来又一个UIScrollView子视图.

UIScrollView旨在垂直滚动,但它不是在所有的滚动.我试过设置滚动视图contentSize没有成功.

我怀疑UIScrollView是没有得到任何触摸事件而不是它是一个大小问题.

有什么建议?

编辑>>

我现在确定这是一个事件问题,而不是特定的事情UIScrollView.

我现在已经覆盖了pointInside:in UIView中的方法,UICollectionViewCell并且可以看到它现在每次点击它都会返回false.在这种情况下,您会认为tap事件会传播到下一个子视图,但UIView仍然没有获取事件.我已经尝试添加一个UIGestureRecognizer,UIView但它永远不会注册一个水龙头.

这里有什么东西拦截我不知道的事件吗?

objective-c uiscrollview ios uicollectionview

8
推荐指数
1
解决办法
2166
查看次数