버튼이 의도 된 동작을 유발하지 않는 원인은 여러 가지가 있습니다. 단추가 트리거 할 수없는 이유는 XIB 단추가 머리글 및 메서드 파일에 정의 된 단추 개체에 연결되어 있지 않기 때문입니다.
.h 파일을 보면 IBOutlet의 모든 항목을 보았을 때 가장 왼쪽 열에 원이 표시되어야합니다. 어두워지면 다른 방향으로 연결됩니다. 그렇지 않으면 연결해야합니다. XIB 파일.
이 당신이 그것을 이런 식으로 뭔가해야 선택기를 지정하는 코드를 표시하시기 바랍니다 문제가 아닌 경우 :
[cancel_button addTarget:self action:@selector(Cancel:) forControlEvents:UIControlEventTouchUpInside];
는 선택이 IBAction를 기능이 있는지 확인 -
-(IBAction)Cancel:(id)sender {
[self dismissViewControllerAnimated:YES completion:NULL];
return;
}
가 한 가지 다른 점은 pushViewController 이후의 명령문은 뷰의 실제 변경 이전에 실행된다는 점입니다. 실제 뷰 변경은 IOS로 제어가 반환 된 후에 만 발생합니다. 푸시보기 컨트롤러 명령이 긴 조건부 프로세스 내에 있고 반환/종료를 올바르게 코딩하지 못한 경우 중요합니다.
다음
ItemCreateViewController *itemCreateViewConrtoller = [[ItemCreateViewController alloc] initWithNibName:@"ItemCreateViewController" bundle:nil]; //Ensure you use correct nib file name
당신이 그것을
[[self navigationController] pushViewController:itemCreateViewConrtoller animated:YES];
을 밀어 수 있지만 당신은 스토리 보드를 사용하고 있기 때문에 - 다음과 같이
그래서이 버튼을 누르면 정확히 어떤 일이 발생합니까? 그리고 그 쟁점은 무엇입니까? –
실제로 무슨 일이 일어나고 있는지에 대한 설명이 없으면 무엇이 빠졌는지 알기가 어렵습니다. –
누락 된 부분은'ItemCreateViewController'에 내용을 추가하는 것입니다. 보기 컨트롤러의 콘텐츠를 어떻게 정의 했습니까? nib/xib 파일이나 스토리 보드를 사용하고 있습니까? 프로그래밍 방식으로 콘텐츠를 정의 할 수 있다는 사실을 알고 있습니다. 그러나 새롭게 등장한 것으로 보이지는 않습니다. 당신은 펜촉이나 스토리 보드에서 컨텐츠를 가져올 지에 따라보기 컨트롤러를 초기화하는 다른 방법을 사용해야합니다. – Paulw11