Danpe Danpe - 3 months ago 25
Objective-C Question

Access iOS 7 hidden UITableViewCellScrollView?

Apple change the

UITableViewCell
hierarchy in iOS 7

Using iOS 6.1 SDK

<UITableViewCell>
| <UITableViewCellContentView>
| | <UILabel>


Using iOS 7 SDK

<UITableViewCell>
| <UITableViewCellScrollView>
| | <UITableViewCellContentView>
| | | <UILabel>


My problem is that the
UITableViewCellScrollView.layer.masksToBounds = TRUE
by default and i need it to be false.

I tried the following:

UIView * scrollView = [self.subviews objectAtIndex:0];
scrollView.layer.masksToBounds = NO;


and

[self.myLabel.superview.layer setMasksToBounds:NO];


But non of them changes the
UITableViewCellScrollView
.
How can i access this scrollview?

Answer

The only way to access the new CellScrollView is by accessing the cell superview after it was created.

I added the following cellForRowAtIndexPath:

cell = [[UICustomTableViewCell alloc] init];
UIView *cellScrollView = cell.myLabel.superview;
[cellScrollView.layer setMasksToBounds: NO];

I think Apple should give us a way to access this new ScrollView without hacking.