Hallo allerseits ich war Wunder, wenn Sie die Zellen innerhalb einer Schaltfläche aktualisieren können? Ich habe den Code, wo die Taste gedrückt wird und es bekommt Ihre lat/lng und drucken sie aus, aber jetzt versuche ich die Lat und Lng Zellen in meiner anderen schnellen Datei CoordinatesAltitudeDegreesTableViewCell.swift ab sofort meine Tabellenansicht zu aktualisieren Funktionen scheinen zu funktionieren und ich habe versucht, die Zelle in der Funktion in der ViewController zu aktualisieren und es funktioniert.Aktualisieren von Tabellenansicht Zellen mit einer Schaltfläche in swift
Meine Frage ist ohnehin, diese Funktionen in der Taste zu setzen, so dass die lat/lng Variablen in ihrem Umfang ist
Nebenbei bemerkt: ive für Lösungen für zwei Tage suchen, und ich könnte scheinen, jede Seite zu finden, hoffentlich habe mir geholfen, ist dies nicht ein Umbuchen und wenn es im Voraus
* wieder, dann sorry, sorry, ich bin sehr neu zu schnelle Programmierung
import UIKit
import Alamofire
import SwiftyJSON
import CoreLocation
import MapKit
class myTableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, CLLocationManagerDelegate{
//----------------------
// Buttons and Variables
//----------------------
var lastLocation: CLLocation? = nil
@IBOutlet weak var tableView: UITableView!
@IBAction func generateInfo(sender: AnyObject) {
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
let lat: Double! = lastLocation?.coordinate.latitude
let lng: Double! = lastLocation?.coordinate.longitude
let alt: Double! = lastLocation?.altitude
print(lat)
print(lng)
print(alt)
locationManager.stopUpdatingLocation()
} // end of button
//--------------
// Main Function
//--------------
override func viewDidLoad(){
super.viewDidLoad()
print("Hello World")
self.tableView.dataSource = self
self.tableView.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
//-------------------
// LOCATION FUNCTIONS
//-------------------
// Represents Location Manager
lazy var locationManager: CLLocationManager = {
let manager = CLLocationManager()
manager.delegate = self
manager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
return manager
}()
// Location Authorization Function
func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus){
if case .authorizedWhenInUse = status {
manager.requestLocation()
} else {
print("yeah... that didn't work")
}
}
// Location Error handle
func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) {
print("that didn't work")
}
// Location Object
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]){
if let location = locations.first {
lastLocation = location
}
}
//--------------------
// TABLEVIEW FUNCTIONS
//--------------------
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 10
}
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if indexPath.row == 0 {
let cell = tableView.dequeueReusableCell(withIdentifier: "imageCellCustomCell", for: indexPath) as! ImageCellTableViewCell
return cell
}
else if indexPath.row == 1{
let cell = self.tableView.dequeueReusableCell(withIdentifier: "coordinatesAltitudeDegreesCustomCell", for: indexPath) as! CoordinatesAltitudeDegreesTableViewCell
cell.latLabel.text = "text"
return cell
}
else if indexPath.row == 2{
let cell = tableView.dequeueReusableCell(withIdentifier: "censusGeographyCustomCell", for: indexPath) as! CensusGeographyTableViewCell
return cell
}
else if indexPath.row == 3{
let cell = tableView.dequeueReusableCell(withIdentifier: "nearestAddressCustomCell", for: indexPath) as! NearestAddressTableViewCell
return cell
}
else if indexPath.row == 4{
let cell = tableView.dequeueReusableCell(withIdentifier: "populationCustomCell", for: indexPath) as! PopulationTableViewCell
return cell
}
else if indexPath.row == 5{
let cell = tableView.dequeueReusableCell(withIdentifier: "ethnicityCustomCell", for: indexPath) as! EthnicityTableViewCell
return cell
}
else if indexPath.row == 6{
let cell = tableView.dequeueReusableCell(withIdentifier: "raceCustomCell", for: indexPath) as! RaceTableViewCell
return cell
}
else if indexPath.row == 7{
let cell = tableView.dequeueReusableCell(withIdentifier: "ageCustomCell", for: indexPath) as! AgeTableViewCell
return cell
}
else if indexPath.row == 8{
let cell = tableView.dequeueReusableCell(withIdentifier: "populationPyramidCustomCell", for: indexPath) as! PopulationPyramidTableViewCell
return cell
}
else {
let cell = tableView.dequeueReusableCell(withIdentifier: "houseHoldCustomCell", for: indexPath) as! HouseHoldTableViewCell
return cell
}
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.row == 0 {
return 300
}
else if indexPath.row == 1{
return 130
}
else if indexPath.row == 2{
return 100
}
else if indexPath.row == 3{
return 100
}
else if indexPath.row == 4{
return 90
}
else if indexPath.row == 5{
return 110
}
else if indexPath.row == 6{
return 200
}
else if indexPath.row == 7{
return 300
}
else if indexPath.row == 8{
return 300
}
else {
return 360
}
}
}
gesetzt genannt wurde Hey Zonily, es tut mir leid, dass es so lange gedauert hat, aber komm zurück, aber seri Vielen Dank. Ich versuche jetzt, dies zu implementieren, aber ich kann wirklich verstehen, was dein Code sagt, also hoffentlich funktioniert das und krank lass dich wissen, wenn es tut! –
@MaclaneNugent meine Antwort zu verbessern und sie als die richtige zu markieren, ist der ganze Dank, den ich brauche. Wenn Sie weitere Hilfe benötigen, kommentieren Sie einfach hier und ich werde meine Antwort überarbeiten. –
Das einzige Problem, auf das ich im AddTarget-Teil stoße. Ich habe ** generate.addTarget (self, action: #selector (self.someButtonClicked (_ :)), forControlEvents: .touchUpInside) ** und es sagt "Wert des Typs 'uiBarButtonItem' hat kein Mitglied 'addTarget'" –