2011-04-25 3 views
2

나는 탭 모음 응용 프로그램에 UIViewController가 있습니다. MainWindow.nib 파일에서 컨트롤러를 추가했습니다 (예 : 프로그래밍 방식이 아님).싱글 톤으로 UIViewController

제 질문은 어떻게 내 View Controller를 싱글 톤으로 만들 수 있습니까? (Facebook 대표자 문제를 해결하기 위해).

+2

나는 코드 냄새를 감지합니다. –

+1

싱글 톤 악취? –

+1

이것은 정말 나쁜 생각입니다. 이런 종류의 싱글 톤 남용은 숙련 된 프로그래머가 모두 함께 피할 것을 조언합니다. – TechZen

답변

0

당신은 어떤 클래스하는 .m 파일에 이런 식으로 뭔가를 추가 싱글 만들 수있다 (그리고 당신은 또한 .H에 선언을 추가해야합니다) :

+ (id)sharedInstance { 
    static id sharedInstance; 
    @synchronized(self) { 
    if (!sharedInstance) 
     sharedInstance = [[ClassName alloc] init]; 
    return sharedInstance; 
    } 
} 
1

당신이 정말로 싱글을 만들려면 (하지만 나는 생각하지 않는다. 디자인을 다시 생각해 보라. "페이스 북 위임 문제"란 무엇인가?), 여기를 보아라. in Apple's sample code

+0

안녕하세요, 저는 정말로 그렇게하고 싶지 않지만 다음 게시물을 읽은 후 : http : //stackoverflow.com/questions/4215797/fbdidlogin-never-called-facebook-ios-sdk 및 http://stackoverflow.com/questions/4244609/fbdidlogin-not-called 그게 유일한 해결책이라는 인상을 받았습니다. –

+1

지난 주 FB 컨트롤러를 직접했습니다. 이 뷰 컨트롤러를 제작하는 동안 어떤 싱글 톤도 상처를 입지 않았습니다 .-) –

+0

FB 라이브러리를 사용하는 여러 클라이언트에 실제로 문제가있는 경우 (단서가 없습니다. 비고에서 추측 해 볼 수 있습니다) 문제는보기 컨트롤러가 얇은 공기에서 생성되지 않는다는 것입니다. –

2

당신은 아마 당신의 "Facebook 연결 코드"를 싱글 톤 app 대리자), 뷰 컨트롤러 자체는 아닙니다. 그런 다음 필요한 모든보기 컨트롤러로 FB 항목을 연결합니다.

관련 문제