CK 레코드 "Detail"이있는 컨트롤러 하나. 컨트롤러 하나의 버튼 하나가 다른 컨트롤러와 연결됩니다. 그 논리에 대해 설정 한 다음 SEGUE ... 컨트롤러 두 segue에서 오는 변수가 표시되지 않는 UI 요소
@IBAction func booton(_ sender: Any) {
func prepareForSegue(segue: UIStoryboardSegue, sender: Any?)
{
if segue.identifier == "lastsegue"
{
if let destination = segue.destination as? FoodDetail01
{
let lastreservation = detail.value(forKey: "Reservation") as? String
let lasttake = detail.value(forKey: "Take") as? String
destination.reservation = lastreservation
destination.take = lasttake
}...
이, 나는이 새로운 변수에 다음 수신 변수와 레이블을 설정 있습니다.
import UIKit
class FoodDetail01: UIViewController {
var reservation: String!
var take: String!
@IBOutlet weak var reservationlabel: UILabel!
@IBOutlet weak var takelabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
self.reservationlabel.text = reservation
self.takelabel.text = take
}
그러나이 코드를 실행하면 컨트롤러 2에 레이블 (올바르게 연결됨)이 표시되지 않는 문제가 있습니다. 그림에서 보는 바와 같이.
내가 잘못 여기서 뭐하는는 무엇입니까?
Up-voted @ Nirav-D 답. 맞습니다. FIRST - 당신은 ** 결코 ** 함수 내에서 함수를 끝내면 안됩니다. 두 번째 (덜 강조된) 요즘 Swift는 NSDictionary에 대한 특별한 이유가 없으면 사전을 사용합니다. – dfd