我将UIScrollView
添加到customView,然后设置了右contentSize
,但scrollView无法滚动。
这是我的代码:
_scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 44, self.bounds.size.width, self.bounds.size.height - 44)];
// _scrollView.translatesAutoresizingMaskIntoConstraints = NO;
// _scrollView.userInteractionEnabled = NO;
_scrollView.contentSize = CGSizeMake(3 * self.bounds.size.width, self.bounds.size.height - 44 + 500);
_scrollView.contentOffset = CGPointMake((_orginSelectedIndex)*(self.bounds.size.width), 44);
_scrollView.pagingEnabled = YES;
_scrollView.scrollEnabled = YES;
[self addSubview:_scrollView];
/* add tableviews */
for (int i = 0 ; i < _titlesArr.count; i ++) {
UITableView *tableView = [[UITableView alloc] initWithFrame:CGRectMake(i * self.bounds.size.width, 44, self.bounds.size.width, self.bounds.size.height - 44) style:UITableViewStylePlain];
tableView.tag = 200 + i;
tableView.backgroundColor = RandColor;
[self addSubview:tableView];
}
我还记录了我的卷轴contentSize
。
NSLog(@"%@-s", NSStringFromCGSize(lml_pager.scrollView.contentSize));
显示:
2016-06-21 17:39:07.272 LMLViewPager[7381:312567] {1125, 1059}-s
有人知道问题是什么吗?我的代码中没有使用autolayout。
调试中有我的图片令牌:
显然,它只添加一个tableView
,我的_titlesArr
计数为3。
picture
答案 0 :(得分:0)
确保您也启用了用户互动。
答案 1 :(得分:0)
tableview应该添加到scrollview而不是scrollview的superview。
答案 2 :(得分:0)
您正在UITableView
之上添加UIScrollView
,它实际上将scrollView放在tableView下面。如果您希望tableView成为scrollView的一部分。尝试将tableView添加为scrollView
答案 3 :(得分:0)
您的视图层次结构如下所示:
YourCustomView->ScrollView->TableView
现在您正在尝试滚动滚动浏览,但您可以看到Tableview
位于层次结构的top
上。所以它不会水平滚动。