Sponsored Link
どうもヤマサキです。
マップをドラッグで動かしたらナビゲーションバーとツールバーが消えるってのがやりたくて色々いじってたらわかったのでメモメモ。
私の検索能力が無いのか、どうしてもMapViewのジェスチャーの最中のdelegate取得がわからないので何となくいじり倒してみたらできた
タップは認識するんだけどパン(ドラッグ)はもともとMapViewでも使ってるからかな?
なので同時に使う方法でいきましょうって事でこんな感じ。
import UIKit
import MapKit
class ViewController: UIViewController, UIGestureRecognizerDelegate {
@IBOutlet weak var _myMap: MKMapView!
override func viewDidLoad() {
super.viewDidLoad()
// パン認識
let _myPan = UIPanGestureRecognizer(target: self, action: "panGesture:")
_myPan.delegate = self
// パン認識本数(指)
_myPan.minimumNumberOfTouches = 1
// Viewに追加.
self._myMap.addGestureRecognizer(_myPan)
}
// パン
func panGesture(sender: UIPanGestureRecognizer){
println("ドラッグしてる!")
}
// ジェスチャーを同時認識させる
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
このUIGestureRecognizerDelegateって補完でないのね
それに_myPan.delegate = selfも補完でなかった
xcode6.1.1だけど私だけかな
補完機能に頼りすぎて入力中にリストでないと不安でしょうがないのは私だけじゃないはず・・・
まぁこんな感じでやりたい事はできたからいいか
Sponsored Link
ツイート
SwiftにてMapViewでジェスチャー(UIGestureRecognizer)を使いこなす