2016-11-09 3 views
-2

Я пытаюсь выполнить переход между двумя UI Просмотрами я правильно ввел идентификатор для Segue как можно видеть HereSwift performSegue собирается Xcode

Это моя функция, с тем же идентификатором «нет», но при нажатии на кнопку в симуляторе он просто показывает This (похоже, он показывает стек в левом нижнем углу?)

func mapView(_ mapView: MKMapView, annotationView view: MKAnnotationView, calloutAccessoryControlTapped control: UIControl) { 
    if control == view.rightCalloutAccessoryView { 
     performSegue(withIdentifier: "no", sender:self) 
    } 
} 

Я приложил мой полный код упаковывают необходим дальнейший анализ. Спасибо за вашу помощь.

View Controller: импорт UIKit импорт MapKit импорт CoreLocation

класс ViewController: UIViewController, MKMapViewDelegate, CLLocationManagerDelegate {

@IBOutlet weak var MapView: MKMapView! 
let manager = CLLocationManager() 

func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 
    //let location = locations[0] 


    //let span:MKCoordinateSpan = MKCoordinateSpanMake(0.02, 0.02) 

    //let myLocation:CLLocationCoordinate2D = CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude) 


} 
override func viewDidLoad() { 
    super.viewDidLoad() 

    // tracking user's location 
    manager.delegate = self 
    manager.desiredAccuracy = kCLLocationAccuracyBest 
    manager.requestWhenInUseAuthorization() 
    manager.startUpdatingLocation() 

    // Setting up Map 
    let distanceSpan:CLLocationDegrees = 2000 
    MapView.setRegion(MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(-39.0556253, 174.0752278), distanceSpan, distanceSpan), animated: true) 
    MapView.showsUserLocation = true 
    MapView.delegate = self 

// artwork on map 
    let windwandcoord: CLLocationCoordinate2D = CLLocationCoordinate2DMake(-39.055961,174.072288) 
    let artworkPin = Artwork(title:"Wind Wand",locationName:"Majestic",discipline:"Statue", 
          coordinate:windwandcoord) 
    MapView.addAnnotation(artworkPin) 
} 


func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? 
{ 
    if annotation is MKUserLocation {return nil} 

    let reuseId = "pin" 

    var pinView = mapView.dequeueReusableAnnotationView(withIdentifier: reuseId) as? MKPinAnnotationView 
    if pinView == nil { 
     pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseId) 
     pinView!.canShowCallout = true 
     pinView!.animatesDrop = true 
     pinView!.calloutOffset = CGPoint(x: -5, y: 5) 
     let calloutButton = UIButton(type: .detailDisclosure) 
     pinView!.rightCalloutAccessoryView = calloutButton 
     pinView!.sizeToFit() 
    } 
    else { 
     pinView!.annotation = annotation 
    } 


    return pinView 
} 



func mapView(_ mapView: MKMapView, annotationView view: MKAnnotationView, calloutAccessoryControlTapped control: UIControl) { 
    if control == view.rightCalloutAccessoryView { 
     performSegue(withIdentifier: "no", sender:self) 
    } 
} 


} 

Любая помощь приветствуется.

+0

«Это просто показывает это» Это приостановлено в точке останова. Вы ставите точку останова. В чем проблема? – matt

+0

Я не помещаю точку останова, когда кнопка нажата, экран переходит на это. EDIT: обновить изображение, чтобы попытаться сделать его более понятным. –

+0

Вы поставили точку останова! Я могу увидеть его на экране! Это то, что синяя полоса в желобе, слева от зеленой стрелки на этой линии. – matt

ответ

2

Посмотреть сплошную синюю полосу в желобе на вашем снимке экрана?

enter image description here

Это точки останова. Когда путь выполнения достигает активной точки останова (сплошной синий, как этот), мы получаем pause. То, что точка останова для.

Если вы не хотите, чтобы это произошло, перетащите точку останова из из желоба.

+0

Wow я чувствую себя таким идиотом! Вы были совершенно правы! извините, действительно новичок в этом даже не понял, что я это сделал! Большое спасибо! –

+2

В следующий раз попробуйте прослушать больше и меньше спорить. – matt

Смежные вопросы