0

ここに画像の説明を入力

最初の「ViewController」にはテーブルビューがあり、2番目の「MapViewController」にはMKMapViewが含まれています。最初の画面から2番目の画面に移動すると、2番目の画面は黒い画面のように見えます。助けて?

 import UIKit
import  MapKit
struct Category {
    let place : String
    let coordinates  : [Double]
}
class ViewController: UIViewController {
    
    private let tableview : UITableView={
        let table = UITableView()
        table.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
        return table
        
    }()
    private let data : [Category]=[
    Category(place: "Misr bank ", coordinates: [30.576352,31.503955])

    ]
    
    override func viewDidLoad() {
        super.viewDidLoad()
        view.addSubview(tableview)
        tableview.delegate=self
        tableview.dataSource=self
    }
    
    override func viewDidLayoutSubviews() {
        tableview.frame=view.bounds
    }


}

extension ViewController:UITableViewDelegate{
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        tableView.deselectRow(at: indexPath, animated: true)
        let category = data[indexPath.row]
        let mapview = MapViewController(coor: category.coordinates)
        self.navigationController?.pushViewController(mapview, animated: true)
    }
}

MapViewController

    import UIKit
import MapKit
class MapViewController: UIViewController {

    
    @IBOutlet weak var map: MKMapView!
    private let coor : [Double]
    
    init(coor:[Double]){
        self.coor=coor
        super.init(nibName: nil, bundle: nil)
        
        let lat = coor[0]
        let long = coor[1]
        print(lat)
        print(long)

    }
    
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }

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

1 に答える 1