忘れそうなのでメモ
import Foundation
class TLHorizontalScrollView : UIScrollView{
// タップ開始時のスクロール位置格納用
var startPoint : CGPoint!;
override init(frame: CGRect) {
super.init(frame: frame);
Initialize();
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder);
Initialize();
}
// initialize method
func Initialize(){
self.delegate = self;
// 横固定なので縦のIndicatorいらない
self.showsVerticalScrollIndicator = false;
}
}
extension TLHorizontalScrollView : UIScrollViewDelegate{
// ドラッグ開始時のスクロール位置記憶
func scrollViewWillBeginDragging(scrollView: UIScrollView) {
self.startPoint = scrollView.contentOffset;
}
// ドラッグ(スクロール)しても y 座標は開始時から動かないようにする(固定)
func scrollViewDidScroll(scrollView: UIScrollView) {
scrollView.contentOffset.y = self.startPoint.y;
}
}
縦方向だけにスクロールしたいときは、x を固定すればいいですね