2017-12-31 15 views
0

목표 :보기 컨트롤러 - 이전보기 컨트롤러에서 "계속하기"버튼이있는 '시작 페이지'- '로그인 페이지'를 표시합니다.segues를 사용하여 UIView에서 UIView 컨트롤러로 이동하는 방법은 무엇입니까?

난에이 iOS 앱을 만들어왔다 빠른 3 프로그래밍 코딩 로그인 페이지가 있고 스토리 보드에서 화면에 버튼이 시작 페이지라는 다른 페이지로 전송하고 싶습니다 엑스 코드 8.2에서 .

Storyboard

난 스토리 보드 드래그 된 버튼 함유 다른 뷰 컨트롤러 프로그래밍 코딩 된 보기 컨트롤러에 연결하는 데 문제. 많은 기사를 읽고 프로그래밍 방식으로 세그 (segue)를 만들고 사용하는 방법에 대한 많은 자습서를 보았습니다. 내 문제를 해결하기 위해 프로토콜을 사용하여 조사했지만 어떤 이유로 든 오류가 발생합니다.

저는 각성 구현을 시도하고 그들에게 식별자를 부여한 다음 제시했지만 그다지 잘 작동하지 않았습니다. 내가 시도한 것이 무엇인지에 관해서 나는 dismiss, present, show와 같은 다른 명령을 사용했지만 은 다음보기 컨트롤러에있는 버튼을 보지 못했습니다. 다음은 View Controller 클래스의 기능입니다. - '로그인 페이지'는 if 문 다음에 다음보기 컨트롤러로 이동해야하므로보기 컨트롤러 - 'Login Page'를 버튼과 함께 표시 할 수 있습니다.

func handleLogin() { 

    //Guard statements are useful for form validation 
    guard let email = emailTextField.text, let password = passwordTextField.text 
     else{ 
      print("Form not valid") 
      return 
    } 

    Auth.auth().signIn(withEmail: email, password: password) { (user, error) in 

     if error != nil{ 

      let alert = UIAlertController(title: "Sorry!", message: "Incorrect Credentials", preferredStyle: UIAlertControllerStyle.alert) 
      alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.default, handler: nil)) 
      self.present(alert, animated: true, completion: nil) 

      print(error) 
      return 
     } 
     //Need to do the code here that can display the next view controller with the button 
    } 
} 

친절히 도움주세요.

+0

먼저 스냅 샷을 어떻게 만들지 모르겠다. 3 개의 스토리 보드 장면을 보여 주지만, 나는 그들 사이의 관계가 무엇인지 잘 모릅니다. 두 번째 버튼으로 세 번째 (왼쪽 아래)로 이동하게 하시겠습니까? 이것은 매우 불분명하다. 다음 번에는 다양한 장면에 레이블을 붙이고 어떤 장면을 어떤 장면으로 할 지 말해주세요. 둘째로, 당신은 "나는 각자 구현을 시도하고 그들에게 식별자를 부여한 다음 제시하지만, 작동하지 않았다"고 말한다. 글쎄, 그게 내가 제안했을 것이기 때문에, 당신이 거기에서 시도한 것을 보지 않고, 당신이 "일하지 않았다"는 것을 말하면서, 우리는 당신을 도울 수 없다. – Rob

+0

@Rob 그래서 내 문제에 답하기에 충분하지 않은 것에 대해 유감스럽게 생각합니다. 글쎄, '로그인 페이지'라는 하위보기 컨트롤러를 '계속 여기'단추가있는보기 컨트롤러 '환영 페이지'에 연결하고 싶습니다. – Murtuza

답변

0

프로그래밍 방식으로 스토리 보드보기를 수행하려면 다음보기 컨트롤러를 인스턴스화 한 다음 을 호출해야 navigationController을 사용하거나 self.present()을 사용할 수 있습니다. 다음은 navigationController를 사용하는 예제입니다. 당신이 당신의 스토리 보드 파일 이름이 무엇이든에 스토리 보드 이름 "Main"을 변경해야합니다

let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let controller = storyboard.instantiateViewController(withIdentifier: "NextViewController") as! NextViewController 
    return controller 
self.navigationController?.pushViewController(controller, animated: true) 

참고. "NextViewController"도 컨트롤러 스토리 보드 식별자가 무엇이든 변경해야합니다 (아래 이미지의 스토리 보드 ID 참조). 또한 스토리 보드에 맞춤 클래스를 설정해야합니다 (아래 이미지의 맞춤 클래스 참조).

enter image description here

+0

나는 당신의 방법을 사용했으나 효과가 없습니다. 다음보기 컨트롤러로 이동할 수 있지만 "여기 계속"버튼을 볼 수 없습니다. '로그인 페이지'에서 '환영 페이지'로 연결하고 싶습니다. 다른보기 컨트롤러에서 단추를 표시 할 수있는 다른 솔루션이 있습니까? – Murtuza

관련 문제