에보기 추가하기, 내 응용 프로그램의 tabBarController에 작은 버튼을 추가하고 있습니다. didCinishLaunchingWithOptions 메소드가 응용 프로그램 대리인입니다. 아이디어는 이것이 스크린 상에 보여지는 viewcontroller의 상단에 보여 질 때 보여지는 것입니다. 사용자는보기 사이를 이동할 수 있으며이 단추는 계속 표시됩니다. tabBarcontroller의sdk 4.2를 사용하여 TabBarcontroller
NSLog(@"tabBarController bounds: %@",NSStringFromCGRect(self.tabBarController.view.bounds));
self.Btn = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
self.Btn.frame = CGRectMake(80, 20, 160, 20);
self.Btn.hidden = YES;
[self.Btn addTarget:self action:@selector(launch:) forControlEvents:UIControlEventTouchUpInside];
[self.Btn setBackgroundImage:[UIImage imageNamed:@"launch.png"] forState:UIControlStateNormal];
[self.tabBarController.view addSubview:self.Btn];
경계 NSLog 하여 인쇄로는 {{0, 0}, {320, 480}}
는 I 버튼 CGRectMake (80, 20, 160, 20의 프레임을); 따라서 상태 표시 줄에 을 허용하기 위해 20을 오프셋했습니다. 이것은 대부분의 시간 동안 작동하는데, 버튼을 볼 때 보이지 않는 viewcontroller 상단의 오른쪽에 이 표시됩니다. 때때로 tabBarcontroller의 경계가 0,0,320,460으로 변경된 것처럼 버튼이 아래쪽으로 이동합니다. 이제 버튼이 새 경계에 상대적이므로 화면 상단에서 20 픽셀 아래로 추가됩니다.
일단 이동되면 작업 전환기에서 앱을 종료하고 다시 시작할 때까지 항상 이와 같이 유지됩니다. 아무도이 문제를 일으키고 해결 방법을 알 수 없습니다. 감사합니다