Подтвердить что ты не робот

Отображение карты с MapKit на игровой площадке Swift для быстрого просмотра?

Приятно видеть тег для быстрой игровой площадки - любить, чтобы это продолжалось.

Я возился с Swift, и мне интересно, можно ли использовать MapKit на игровой площадке, чтобы вы могли использовать функцию быстрого просмотра, чтобы я мог выполнять итерацию и играть с предварительным просмотром моей работы. Я не понял синтаксиса, поэтому подумал, что спрошу, изучил ли кто-нибудь это в игровой среде. Я думаю, мне нужен какой-то код, чтобы установить его как контроллер вида.

import UIKit
import MapKit

// Sample UIView code which works great in the playground.
//var myView:UIView = UIView();
//myView.frame = CGRectMake(0, 0, 320, 560)
//myView.backgroundColor = UIColor.blueColor()

// Non working map code - no errors but can't figure out what to call or initiate to get the view in the Quick Look side.

var mapView = MKMapView();
mapView.region.center.latitude = mapView.userLocation.coordinate.latitude;
mapView.region.center.longitude = mapView.userLocation.coordinate.longitude;
mapView.region.span.latitudeDelta = 0.00725;
mapView.region.span.longitudeDelta = 0.00725;

Угадаю, что я просто пропустил что-то простое для того, чтобы mapView начал сам и т.д. Мне нравится интерпретируемая площадка для рисования вокруг, просто нужно выяснить, может ли она выполнять функции мао, а не просто писать файлы .swift и среду внутри Xcode и становится более формальным.

4b9b3361

Ответ 1

Для XCode7.1 и Swift2.1 в OS X я открыл временную шкалу и сделал следующее:

import MapKit
import XCPlayground

let delta = 5.0
let frame = CGRect( x:0, y:0, width:200, height:200 )
let mapView = MKMapView( frame: frame )
var region = MKCoordinateRegion()
region.center.latitude = 31.0
region.center.longitude = -110.0
region.span.latitudeDelta = delta
region.span.longitudeDelta = delta
mapView.setRegion( region, animated: true )

XCPlaygroundPage.currentPage.liveView = mapView
XCPlaygroundPage.currentPage.needsIndefiniteExecution = true

Ответ 2

Попробуйте следующее:

import UIKit
import MapKit
import XCPlayground // Required for XCPShowView

let frame = CGRect(x: 0, y: 0, width: 150, height: 150)
let mapView = MKMapView(frame: frame)
mapView.region.center.latitude = 37.3347606
mapView.region.center.longitude = -122.0548883
mapView.region.span.latitudeDelta = 0.00725
mapView.region.span.longitudeDelta = 0.00725

XCPShowView("mapview", mapView)

Ответ 3

Я пробую это в Swift Playground App, я просто несколько изменений и добавлю одну строку вашего кода. В моей быстрой игровой площадке используется Swift 3.1. Хотелось бы, чтобы я мог загрузить видео, в этой карте я могу увеличивать и уменьшать масштаб, и я могу перемещаться по карте. https://i.stack.imgur.com/XVqPg.jpg

import UIKit
import PlaygroundSupport
import MapKit 


var myView:UIView = UIView()
myView.frame = CGRect(origin: CGPoint (), size: CGSize(width: 320, height: 568))


var mapView = MKMapView();
mapView.region.center.latitude = 
mapView.userLocation.coordinate.latitude
mapView.region.center.longitude = 
mapView.userLocation.coordinate.longitude
mapView.region.span.latitudeDelta = 0.00725
mapView.region.span.longitudeDelta = 0.00725

myview.addSubview(mapView)


PlaygroundPage.current.liveView = mapView
PlaygroundPage.current.needsIndefiniteExecution = true