2012-03-02 5 views
3

storyboards를 사용하는 xCode 4.2 프로젝트가 있습니다. 나는 mapkit 프레임 워크를 사용하고있다. 나는 사용자가 segue로 선택한 주석으로 popover를 위치 시키려고한다.segue anchor가없는 mapkit annotation에 대한 segeue popover

다음은 내가 가지고있는 것입니다.

if([view.annotation isKindOfClass:[ContentPoint class]]) { 
    NSLog(@"I see this in my log"); 

    [self performSegueWithIdentifier:@"ViewAudioSegue" sender:mapView.selectedAnnotations]; 
} 

이 올바른 SEGUE를 호출하지만 SEGUE는지도보기의 앵커을 가지고 있기 때문에,지도의 botton을에서가 아니라 선택 주석 옆에있는 팝 오버가 표시됩니다. 다른 발신자 (보기,지도 등)를 시도했지만 동일한 결과를 얻습니다. 프로그래밍 방식으로 앵커를 설정하는 방법이 있습니까? 이것은 내가 수동으로 앵커 설정하지 않고 얻을 오류입니다 "로 인해 캐치되지 않는 예외 'NSInternalInconsistencyException'응용 프로그램 종료, 이유는 *을 '. UIStoryboardPopoverSegue은 바 버튼 항목 또는 뷰에서 제시해야합니다'"

답변

0

또한 숨김 버튼을 만들어 팝업 세그먼트를 고정하고 버튼을 선택하면 해당 주석 위에 버튼을 배치 할 수 있습니다. 다음은 비슷한 질문으로 tableview를 사용하여 비슷한 대답을했습니다. https://stackoverflow.com/a/14514837/1712892. 가장 큰 차이점은 화면에서 주석의 위치를 ​​계산하고 anchorButton을 이동 한 다음 Segue 수행시 사용자 정의 주석을 보낸 사람으로 전달해야한다는 것입니다. 나는 실제로 같은 프로젝트에서 이것을하고있다. 시간이 있다면 오늘 밤에 나중에 예제로 편집 할 것입니다.

관련 문제