概要
親ViewにCursorViewというViewを配置しています。
CursorViewは以下のコードでドラッグをすると自由に移動できるようなViewになっています。
相談内容
CursorViewのドラッグ範囲を親Viewの領域内のみでしか制御できないようにしたいのですが、どのように実装すればいいかわからず、ご教授いただきたいです。
現在のコード
final class CursorView: UIView { override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) { super.touchesMoved(touches, with: event) guard let touch = touches.first else { return } let location = touch.location(in: self) let previousLocation = touch.previousLocation(in: self) let draggedDistanceX = location.x - previousLocation.x let draggedDistanceY = location.y - previousLocation.y var newFrame = frame newFrame.origin.x += draggedDistanceX newFrame.origin.y += draggedDistanceY frame = newFrame } }
あなたの回答
tips
プレビュー