인프런 커뮤니티 질문&답변
별자리 설명 앱 코딩으로 구현하기 질문입니다.
작성
·
421
0
강사님께서 코딩으로도 할 수 있다고 하셔서, 해보고 있는데요
rootViewControll의 prepare 함수를 아래와 같이 만들었습니다.
 (segue.destination as! DetailViewController).imgView.image = UIImage(named: "dogstar.png")!
그런데 위의 부분에서 계속 nil이라고 에러가 납니다.
어느 부분이 잘 못 되었는지 감을 못잡겠는데, 도움 주실 수 있으신가요?
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.identifier == "dog" {
            print("dog")
            (segue.destination as! DetailViewController).imgView.image = UIImage(named: "dogstar.png")!
            (segue.destination as! DetailViewController).scrollView.addSubview((segue.destination as! DetailViewController).imgView)
        } else if segue.identifier == "horse" {
            print("horse")
            (segue.destination as! DetailViewController).imgView.image = UIImage(named: "horsestar.png")!
            (segue.destination as! DetailViewController).scrollView.addSubview((segue.destination as! DetailViewController).imgView)
        } else if segue.identifier == "bear" {
            let imageView = UIImageView(image: UIImage(named: "bear.png")!)
            print("bear")
        } else if segue.identifier == "eagle" {
            let imageView = UIImageView(image: UIImage(named: "eagle.png")!)
            print("eagle")
        } else {
            let imageView = UIImageView(image: UIImage(named: "rabbit.png")!)
            print("rabbit")
        }
    }
답변 3
0
0

뭐하는거니?
지식공유자
제 생각엔 말이죠. 이런 방식 보다는..여기서 이미지를 바로 넣는거 말구요.
(segue.destination as! DetailViewController).imgView.image = UIImage(named: “dogstar.png”)!
(segue.destination as! DetailViewController).scrollView.addSubview((segue.destination as! DetailViewController).imgView) 텍스트만 DetailViewController에다 보내시고, DetailViewController의 ViewDidLoad에서 넘어온 텍스트 변수 확인해서 이미지를 읽어 오는 방식이 더 간단할꺼 같네요.
(segue.destination as! DetailViewController).scrollView.addSubview((segue.destination as! DetailViewController).imgView) 텍스트만 DetailViewController에다 보내시고, DetailViewController의 ViewDidLoad에서 넘어온 텍스트 변수 확인해서 이미지를 읽어 오는 방식이 더 간단할꺼 같네요.
0






