ios – 禁用UIScrollView Swift的水平滚动

滚动视图

我有一个UIScrollView,剩下的约束:0,top:0,right:0,bottom:0

内滚动视图

在这个UIScrollView的顶部是一个UIImageView,左边的约束:0,height:200

在这下面我有一个UITextView,约束左:0,bottom:0

这意味着UITextView将相对于其内容进行调整大小,并且将UINTextView的scrollingEnabled设置为false.

所以,当我跑,它几乎工作完美.

一个问题是UIImageView占实际屏幕宽度的10%左右.因此,水平滚动已启用.

我已经尝试添加行

imageView.frame = CGRect(0,screenSize.width,200)
scrlView.contentSize.width = screenSize.width

但这并没有什么不同.我仍然可以水平滚动,图像视图仍然占据实际屏幕宽度的10%.

注意,我没有在storyboard中设置imageView屏幕宽度,仅在程序上.

有任何想法吗?

解决方法

喜欢这个,
func scrollViewDidScroll(scrollView: UIScrollView) {
    if scrollView.contentOffset.x>0 {
        scrollView.contentOffset.x = 0
    }
}

而且,您可以设置此属性:

scrollImg.directionalLockEnabled = true

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...