2012-01-29 6 views
0

appDelegate에는보기가 없으므로 창만 표시되므로 뷰를로드하는 방법을 쉽게 이해할 수 없습니다. 내 문제는 오랫동안 그 didReceiveLocalNotification 발생하면 그 이벤트와 함께 새로운보기를로드 할 수 없습니다. 나는 그것에 대해 뭔가를해야한다는 요지까지 그 주변에서 일해왔다. ([self.window의 addSubView에서 : 이것에 대한 'addSubView'AppDelegate 하위보기를 추가 할 수 없습니다.

선택과 방법을 선언하지 않는 인스턴스 메시지

수신기 TUPE 'UIWindow'내가 addSubview하려고 할 때, 엑스 코드는 나에게 오류를 제공보기 ])

screwLightBulbViewController *view = [screwLightBulbViewController newMyView]; 
[self.window addSubView:view]; 

내가 AppDelegate에 파일이 addSubview를 does'nt 이해하지만 난 그것을 발사 할 때 특정보기로 전환합니다.

나는 screwLightBulbViewController에서 함수를 호출하고 그로부터 뷰를 만드는 것과 같이 다른 많은 방법을 시도해 왔습니다. viewController의 내 함수는 다음과 같습니다.

+(id)newMyView 
{ 
    UINib *nib = [UINib nibWithNibName:@"MyView" bundle:nil]; 
    NSArray *nibArray = [nib instantiateWithOwner:self options:nil]; 
    screwLightBulbViewController *me = [nibArray objectAtIndex: 0]; 
    return me; 
} 

어떤 방법 으로든 도움을 주시면 감사하겠습니다. 시간을내어 주셔서 감사합니다. :)

답변

2

그것은 addSubview이 아니라 addSubView:입니다. UIWindowUIView의 하위 클래스입니다.

보기를 창에 대한 하위보기로 직접 추가하는 것은 일반적으로 권장되지 않으므로 대신보기를 상위 제어기보기에 하위보기로 추가해야합니다. view programming guideview controller programming guide을 살펴 봐야 할 시간이 있으면 여유있게 사용할 수 있습니다.

+0

OMG! 음 .. 때로는 다른 시간보다 쉽지. 감사! 그래서 나는 [self.window.view addSubview : view];에 가야한다. 귀하의 링크도 주셔서 감사합니다. :) –

+0

'[self.window addSubview : view]','UIWindow'는'view' 속성을 가지고 있지 않습니다. 천만에요. –

+0

변경 사항과 함께 오류를 수정했습니다. 제공된 링크의 내용을 읽은 후에도 내 문제가 완전히 해결되지 않았습니다. '__strong'은 무엇을 의미합니까? 나는 그것을 약하게해야합니까? : p 전체 경고 : 'screwLightBulbViewController'* __strong ''UIView * '유형의 매개 변수에 호환되지 않는 포인터 유형 –

관련 문제