我创建了一个分页的UIScrollView,其中包含每个页面上的标签。如何降低标签之间的边距,如图中所示,然后仍能滚动?
目前我的navigationBar看起来如下。你可以在哪里滑到右边的下一页并获得下一个标签。
我想要的是这样的东西,只有很小的余量,仍然可以刷卡。
//Category ScrollView
categoryScrollView = UIScrollView(frame: CGRectMake(0, self.navigationController!.navigationBar.frame.height-38, self.view.frame.width, 38))
categoryScrollView?.contentSize = CGSizeMake(self.view.frame.width, 38)
categoryScrollView?.delegate = self
categoryScrollView?.pagingEnabled = true
self.navigationController?.navigationBar.addSubview(categoryScrollView!)
categoryArray = NSArray(objects: "Book", "Elektronik")
var textWidth = 0
for val in categoryArray!
{
var textLabel: UILabel = UILabel()
textLabel.textAlignment = NSTextAlignment.Center
textLabel.text = val as NSString
textLabel.frame = CGRectMake(CGFloat(textWidth), 0, categoryScrollView!.frame.width, categoryScrollView!.frame.height)
categoryScrollView?.addSubview(textLabel)
textWidth = textWidth + Int(textLabel.frame.size.width)
if textWidth > Int(self.view.frame.width) {
categoryScrollView?.contentSize = CGSizeMake(CGFloat(textWidth), categoryScrollView!.frame.height);
}
}
答案 0 :(得分:0)
"页面的默认宽度"当pagingEnabled
打开时,滚动视图的宽度。您可以通过将clipsToBounds
设置为false
来缩小宽度并让包含的视图在视图边缘之外可见。
如果这对您不起作用,还可以通过UIScrollViewDelegate
方法scrollViewWillEndDragging(...)
拦截拖动结束来调整分页宽度,您可以将targetContentOffset
调整为满足您的需求(参见示例here)。