티스토리 뷰

iOS쪽에서 쓸만한 공유 라이브러리인
ShareKit 과 AddThis 중
국내에서 많이 쓰고 있는 ShareKit v0.2.1 버젼의 샘플 프로젝트를
iOS5에서 테스팅하는데

타이틀바 좌측 상단의 [Cancel] 버튼을 눌러도 아무런 응답이 없었다.

뭐야이게~
구글 검색~!
https://github.com/ideashower/ShareKit/issues/254 (영문)
위 웹페이지의 답변을 주욱 보다 보면  btedev 님이 해결법과 패치된 소스를 알려주신다.
https://gist.github.com/1281191
에서 브라우저 찾기를 이용해서 dismissModalViewControllerAnimated 관련 부분 2곳을 찾아
자신의 소스를 고쳐주면 된다.

아래 정리해 보겠다.

Xcode4 좌측의 프로젝트 파일 필터(리스팅 된곳 하단의 입력란)에 SHK.m 을 입력.
> SHK.m 클릭 >  
- (void)hideCurrentViewControllerAnimated:(BOOL)animated
{
	if (isDismissingView)
		return;
	
	if (currentView != nil)
	{
		// Dismiss the modal view
		if ([currentView parentViewController] != nil)
		{
			self.isDismissingView = YES;
			[[currentView parentViewController] dismissModalViewControllerAnimated:animated];
		}		
		else
			self.currentView = nil;
	}
}
......
- (void)showViewController:(UIViewController *)vc
{
......
	if (currentView != nil)
	{
		self.pendingView = vc;
		[[currentView parentViewController] dismissModalViewControllerAnimated:YES];
		return;
	}
......
}
를 아래와 같이 수정
- (void)hideCurrentViewControllerAnimated:(BOOL)animated
{
	if (isDismissingView)
		return;
	
	if (currentView != nil)
	{
		[currentView dismissModalViewControllerAnimated:animated];
        }
}
......
- (void)showViewController:(UIViewController *)vc
{
......
	if (currentView != nil)
	{
		self.pendingView = vc;
		[currentView dismissModalViewControllerAnimated:YES];
		return;
	}
......
}
댓글