2016-09-17 6 views
1

나는 viewcontrollersNavigation Controller을 사용합니다. 나는 homescreeen의 UIButton을 누르고 다른 viewcontroller으로 이동합니다. 새 viewcontrollerUIButton을 클릭하면 다시 홈 화면으로 이동합니다. 그러나 홈 화면에서 UIButto n을 누르면 이번에는 오류가 발생합니다.ios 시뮬레이터에서 SIGABRT 오류

코드가있는 단추를 스토리 보드에 만들지 않았습니다.

무엇이 문제 일 수 있습니까? 어떤 친구는 poptorootviewcontroller이 문제를 해결하지만 버튼에 추가하는 것을 모릅니다. 누구든지 도움을받을 수 있습니까?

여기에 대한 짧은 동영상입니다. enter image description here

여기 코드입니다.

 override func viewDidLoad() { 
     super.viewDidLoad()  

    let closeButton = UIButton() 
    closeButton.frame = CGRect(x: screen.width - 70, y: 20, width: 60, height: 60) 
    closeButton.setTitle("Skip", forState: .Normal) 
    closeButton.setTitleColor(UIColor(red: 0.0/255.0, green: 0.0/255.0, blue: 0.0/255.0, alpha: 0.5), forState: .Normal) 
    closeButton.titleLabel!.font = UIFont.systemFontOfSize(16) 
    closeButton.addTarget(self, action: #selector(OnboardingController2.pressed(_:)), forControlEvents: .TouchUpInside) 
    view.addSubview(closeButton) 
} 


func pressed(sender: UIButton!) { 

    audioPlayer?.stop(); 
    let loginPageView = self.storyboard?.instantiateViewControllerWithIdentifier("HomePage") as! ViewController 
    self.presentViewController(loginPageView, animated: true, completion: nil) 

} 
+1

무엇이 오류입니까? – shuvo

+1

홈 스크린에서 어떻게 액션을 추가하는지 궁금합니다. 닫기 버튼이 예상 한대로 수행되고있는 것으로 보이는 것처럼 컴퓨터 버튼에 대한 코드를 표시하십시오. – skymook

답변

1

버튼 동작을 pressed 버튼으로 바꾸십시오. 왜냐하면 당신이 건너 뛰고 집보기 컨트롤러에 갈 때. 네비게이션이 더 이상 스택에 없도록 컨트롤러를 표시하고 있습니다. 그리고 다시 컴퓨터 버튼을 누르면 컨트롤러를 밀어 넣으려고 할 것이고 네비게이션이 스택에 더 이상 충돌하지 않기 때문에 다시 충돌 할 것입니다. 건너 뛰기 버튼을 누르면 pop보기 컨트롤러로 시도하십시오. 아래처럼.

func pressed(sender: UIButton!) { 
    audioPlayer?.stop(); 
    self.navigationController?.popToRootViewControllerAnimated(true) 
    // OR 
    self.navigationController?.popViewControllerAnimated(true) 
} 
+0

감사합니다 ... – ali

1

내가 말할 수 없습니다. 그래서 저는 여기서 글을 씁니다. skymook이 말하는 바로는 "건너 뛰기"버튼에 문제가 없습니다. 내가 무슨 일이 일어나고 있는지 모르겠으므로 적절한 답을 줄 수는 없다. 시도해 볼 물건을주세요. Zeroth, Bhautik Ziniya 제안을 시도하십시오. 첫번째 의견은 "audioPlayer? stop();"입니다. 시도해보십시오. 이것이 작동하지 않는다면 이미지를 보여주기 위해 추가 작업을하고있는 코드에 주석을 달아라. 이미지가 없으면 제대로 작동하지만 그 부분은 코드 부분에 있습니다. 탐색 기능을 사용하지 않고 시도해도 문제가 탐색 기능과 맞는지 확인할 수 있습니다. 당신은 또한 viewcontroller의 탐색에 segue를 사용하려고 할 수 있습니다. 콘솔을보고 쉽게 문제를 해결할 것입니다.

관련 문제