Apple更改了iOS 7中的UITableViewCell
层次结构
使用iOS 6.1 SDK
<UITableViewCell>
| <UITableViewCellContentView>
| | <UILabel>
使用iOS 7 SDK
<UITableViewCell>
| <UITableViewCellScrollView>
| | <UITableViewCellContentView>
| | | <UILabel>
我的问题是UITableViewCellScrollView.layer.masksToBounds = TRUE
默认情况下我需要它是假的。
我尝试了以下内容:
UIView * scrollView = [self.subviews objectAtIndex:0];
scrollView.layer.masksToBounds = NO;
和
[self.myLabel.superview.layer setMasksToBounds:NO];
但是没有改变UITableViewCellScrollView
。
如何访问此滚动视图?
答案 0 :(得分:7)
访问新CellScrollView的唯一方法是在创建单元超级视图后访问它。
我添加了以下cellForRowAtIndexPath
:
cell = [[UICustomTableViewCell alloc] init];
UIView *cellScrollView = cell.myLabel.superview;
[cellScrollView.layer setMasksToBounds: NO];
我认为Apple应该为我们提供一种方法来访问这个新的ScrollView而不会出现黑客攻击。
答案 1 :(得分:2)
目标-C:
UIView *cellScrollView = [[cell contentView] superview];
[cellScrollView setClipsToBounds:NO];
夫特:
let cellScrollView = cell.contentView.superview
cellScrollView?.clipsToBounds = false