2012-08-15 4 views
1

이 질문은 약간 구체적이지만 어쨌든 물어볼 것입니다. 따라서 여기에서 ShareKit 2.0 설치에 대한 모든 지침을 제대로 준수했습니다. https://github.com/ShareKit/ShareKit/wiki/Installing-sharekitShareKit 공유자는 한 번만 표시 하시겠습니까?

모든 것이 잘 컴파일됩니다. 내가 추가 한 유일한 파일은 DefaultSHKConfigurator.m 파일이며 공유자에 대한 내 정보가 있습니다.

그래서 예를 들어 나는이 같은 SHKMail 전화 :

SHKItem *item = [SHKItem image:image title:@"Hey"]; 
     [item setText:myText]; 
     [item setURL:appURL]; 
     if ([SHKMail canShare]) { 
      [SHKMail shareItem:item]; 
     } 

가 잘 아무 문제를로드하지 않으며, 잘 닫습니다 처음. 두 번째로이 코드를 실행하면 장치에서 아무런 변화가 없습니다. 이 문제는 SHKMail에 제약이 없으며 ALL 공유자가 발생합니다. 문제를 SHK.m 클래스로 좁혔습니다. 그 코드는 내가 게시 된 첫 번째 코드를 실행 두 번째로 호출되는 안

// If a view is already being shown, hide it, and then try again 
    if (currentView != nil) 
    { 
     self.pendingView = vc; 
     [[currentView parentViewController] dismissModalViewControllerAnimated:YES]; 
     return; 
    } 

다음 showViewController 방법에서

이 코드는 주위에 두 번째로 호출됩니다. 어쨌든, 무엇이 이것을 일으킬 수 있습니까? 디버깅 할 수있는 다른 방법은 무엇입니까? 어떤 아이디어?

나는 나를 완전히이 문제를 해결하는 데 도움이 사람이하는 50 포인트 현상금을 얻을 것이다 생각합니다.

답장을 보내 주신 분께 감사드립니다. :)

답변

0

가 나는 성공적으로에 StackOverflow에이 질문을보고이 문제를 해결하기 위해 관리해야 :이 대답하여이 문제를 해결 결국 :

ShareKit method swizzling in Lion/Xcode 4.3.1? 거의 단지 멀리 방법 스위 즐링에서있어.

0

이것은 어두운 곳에서의 촬영이지만 공유 키트 문제에 대한 내 머리카락을 꺼내어 도움이된다는 것을 알고 있습니다.

처음에는 currentView이 nil로 설정되지 않는 경우보기를 닫은 후로 보입니다.

나는보기가 iOS5를 기각 된 후 그들이 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]; 
     } 
     // for iOS5 
     else if([currentView respondsToSelector:@selector(presentingViewController)] && 
       [currentView presentingViewController]) 
     { 
      self.isDismissingView = YES;    
      [[currentView presentingViewController] dismissViewControllerAnimated:animated completion:^{                   
       [[NSOperationQueue mainQueue] addOperationWithBlock:^{ 
        [[NSNotificationCenter defaultCenter] postNotificationName:SHKHideCurrentViewFinishedNotification object:nil]; 

        //THIS IS NEW 
        self.currentView = nil; 
       }]; 
      }]; 
     } 

     else 
      self.currentView = nil; 
    } 
} 

난 단지 강제 self.currentView = nil; 호출에 추가로 아이폰 OS 5 봅니다이 변화와 함께 작동하는 방법의 일부를 업데이트 한 것을 알 수있다.

+0

시도해 주셔서 감사하지만 유감스럽게도 두 번째로 공유기를 닫을 때 앱이 다운됩니다. 다른 생각? –

+0

이것은 K S 응답에도 적용될 수 있지만 시뮬레이터에서이 문제가 발생하고 있습니까? – random

+0

많은 장소에서 일부 장치 코드 만 사용하기 때문에 시뮬레이터에서 테스트 할 수 없습니다. –

0

또한 Facebook 공유 (예 : [SHKFacebook shareItem : item])에 ShareKit 2.0을 사용하고 있으며 현재 직면하고있는 문제가 발생하지 않았습니다.

iPhone Simulator 4.3 및 5.1에서 문제없이 코드 (예 : [SHKMail shareItem : item])를 테스트했습니다.

환경이 올바르게 설정되지 않았거나 코드가 최신이 아닐 수 있습니다.

+0

내 코드는 절대적으로 최신입니다. 환경에 정확히 무엇이이 문제를 일으킬 수 있습니까? –

+0

안녕하세요. iBrad, 귀하의 문제를 일으키는 것이 확실하지 않습니다. 문제를 재현 할 수 있는지 알아보기 위해 앱을 단순화하거나 테스트 앱을 만들 수 있습니까? –

+0

테스트 앱을 만들 수 있습니다. 며칠을 줘, 여기에 링크를 게시 할게. 그 프로젝트를 통해 기꺼이 가서 무엇이 잘못되었는지 보시겠습니까? 나는 당신에게 50 포인트 현상금, 최대 표를 주겠다. 나는이 사이트를 처음 보던 이래로 당신의 대답을 받아 들일 것이다. 그러나이 문제를 완전히 해결할 수 있도록 도와 줄 경우에만 :) –

관련 문제