2013-06-20 3 views
3

내 메뉴에 ECSlidingViewController를 사용하고 있는데, 초기 컨트롤러, 메뉴, 홈 페이지 및 로그인 페이지가 있습니다. 초기보기 컨트롤러에서 사용자가 인증되면 홈 페이지가 표시되고 로그인 대화 상자가 표시됩니다.ECSlidingViewController, 메뉴를 닫을 수 없습니다.

모든 것이 잘 동작하는 것 (자기 topViewController 사용), 내가 가지고있는 문제는 홈 뷰 컨트롤러에서 오전 때

내가 (메뉴 아이콘을 클릭하면 것을 인 I 프로그래밍 방식으로 추가됨) 메뉴가 나타나지만 다시 닫으려면 아무 것도 나타나지 않고 메뉴가 계속 표시됩니다.

은 내가 NSLog를 추가하고 나는 메뉴 자체를 숨기지 않습니다하지만 올바른 방법

- (IBAction)revealSidebar 
{ 
NSLog(@"reveal "); 
    [self.slidingViewController anchorTopViewTo:ECRight]; 

} 

를 호출하고 있음을 볼 수 있어요.

아이디어를 얻으려면 몇 가지 스크린 샷을 첨부하십시오.

NSLog (@ "here");

+0

내 메뉴 항목 (아이콘)은 위에 표시된 바와 같이 revealSidebar 동작에 연결됩니다. 동일한 버튼에 2 개의 액션을 추가하려면 어떻게해야합니까? 하나는 메뉴를 표시하고 다른 액션은 숨기려면 어떻게해야합니까? ithe 튜토리얼은 revealSidebar 만 사용하고 제대로 작동하지만 유일한 차이점은 내 케이스의 아이콘이 드래그 앤 드롭되지 않았지만 프로그래밍 방식으로 생성된다는 것입니다. 당신의 도움을 주셔서 감사합니다! – user714142

+0

내 대답보기. 언급 한 알림을 받으면 바 버튼 항목에서 setAction :을 호출하십시오. – geraldWilliam

+0

아! 알 겠어! 그것을 시도하게하십시오. – user714142

답변

1

ECSlidingViewController 포스트 (다른 ​​사람의 사이에서) 다음과 같은 공지 사항 :

/** Notification that gets posted when the underLeft view will appear */ 
extern NSString *const ECSlidingViewUnderLeftWillAppear; 

/** Notification that gets posted when the underLeft view will disappear */ 
extern NSString *const ECSlidingViewUnderLeftWillDisappear; 

당신은이 같은 핸들러 방법이 알림을 수신하고 구현하기 위해 등록 할 수 있습니다 : 적절한 버전으로

- (void)handleMenuDidShowNotification:(NSNotification *)notification 
{ 
    [self.menuItem setAction:@selector(closeMenu:)]; 
} 

- (void)handleMenuDidHideNotification:(NSNotification *)notification 
{ 
    [self.menuItem setAction:@selector(openMenu:)]; 
} 

- (void)closeMenu:(id)sender 
{ 
    [self.slidingViewController anchorTopViewTo:ECRight]; 
} 
- (void)openMenu:(id)sender 
{ 
    [self.slidingViewController resetTopView]; 
} 
0

시도 업그레이드를 ECSlidingViewController. 이 질문에 사용 된 버전에는 너무 늦게 제스처를 설정하는 데 문제가있었습니다. 이 문제는 1.0.1 버전에서 수정되었습니다.