화면전환 시 초기화 문제..


1.

세그웨이로 화면전환이 이루어 지면 버튼에 있던 값들이 변경됩니다..;

버튼의 텍스트 값을 서버에서 불러와서 변경하고 이 버튼을 클릭하여 화면전환이 이루어지고 다시 back 하여 돌아오면

버튼의 텍스트 값이 스토리보드에 지정한 텍스트 값으로 돌아가버립니다;;

그리고 스토리보드에 버튼 텍스트값을 아얘 공란으로 둬버리면, ("") 버튼 텍스트가 변경되지가 않네요;

2.

viewDidLoad에 델리게이트라던가 여러가지 값을 지정해 놓은 후 화면전환이 이루어지면 해당 옵션들이 전부 초기화 되는것 같습니다..

따라서 viewDidLoad에 있던 값들 중 상당수를 viewDidAppear로 옮겼는데 이렇게 하는게 맞는건가요;

  • 2016년 08월 18일에 작성됨

조회수 140


4 답변


tableview에 static cell로 구성되어 있으며, static cell에 stackview안에 뷰로 구성되어 있습니다.

  • 2016년 08월 18일에 작성됨


자답입니다. // self.btnNoticeContent_01.titleLabel?.text = content self.btnNoticeContent_01.setTitle(content, forState: .Normal) 밑에거로 하니깐 잘 되네요. 왜 저렇게 했을까 어디서 보고 ㅠ

  • 2016년 08월 18일에 작성됨


2번에 대해서 궁금합니다! 원래 저렇게 해야하나요? 화면전환시마다 viewDidAppear에서 델리게이트라든가 여러가지 설정을 다시 재초기화 해주어야 하는건가요?

  • 2016년 08월 18일에 작성됨

  • 아닙니다. ViewDidAppear는 정말로 나타날때 필요한 작업들을 해야하고 초기화작업은 ViewDidLoad 에서 하시는것이 맞습니다. 아마도 화면 전환할때 어떤 이유에서인지 ViewController를 다시 만들고 있는것 같은 느낌입니다.     intmain   2016.8.24 10:01     

viewWillAppear 에도 초기화 과정이 있지 않나요? back 에 관한 Segue도 지정하신건가요?

  • 2016년 10월 10일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close