문제

iPad에서 UIActivityViewController를 사용하여 이상한 UI 글리치가 있습니다.

은 알리기 위해 복잡해 지므로 두 개의 비디오가 있습니다. iOS6 행동과 결함이있는 iOS7 하나를 보여주는 하나는 다음과 같습니다. iOS6 : http://quick.as/govpsry7


iOS7 : http://quick.as/qr7jtd8b

제 1 발행 : 화살표는 iOS7 (디자인별로)에 위치한 화살표가 조금 떨어져 있습니다. UIBarbuttonItems가있는 일반적인 UINAvigationBar.

코드 (iPad)를 제시하는 코드 :

 ActivityPopover = [[UIPopoverController alloc] initWithContentViewController:activityViewController];

 [activityPopover presentPopoverFromBarButtonItem:sender
                         permittedArrowDirections:UIPopoverArrowDirectionAny
                                         animated:YES];
.

여기에 아무 것도 없습니다. 발신자는 uibarbuttonitem입니다.

두 번째 문제 : UIActivityViewController에서 인쇄를 선택하면 iOS7에서 UI 전환 문제가 있습니다. 새로운 인쇄 옵션 팝버가 왼쪽에서보기로 이동하여 전체 화면의 불포화 된 배경을 이동합니다. 2 번째 비디오에서 가장 잘 보입니다.

3RD 문제 : 볼 수 있듯이 인쇄 옵션 대화 상자가 열리면 UIWebView의 내용이 어떻게 든 조정됩니다. 나는 이것의 이유가 보이지 않는다.

"about : blank"로 탐색 할 때 1 차 및 두 번째 문제가 발생합니다.

아무도이 결함에 대해 뭔가를 알고 있습니까? 일반적인 버그?

편집 : iOS7 버그와 같은 첫 번째와 두 번째 모습입니다. SAM Vermette에서 SvwebViewController를 시도하고 테스트 코드를 삽입했습니다.

svwebviewController.m의 데모 삽입물 :

@interface SVWebViewController () <UIWebViewDelegate>

@property (nonatomic, strong) UIBarButtonItem *backBarButtonItem;
@property (nonatomic, strong) UIBarButtonItem *forwardBarButtonItem;
@property (nonatomic, strong) UIBarButtonItem *refreshBarButtonItem;
@property (nonatomic, strong) UIBarButtonItem *stopBarButtonItem;
@property (nonatomic, strong) UIBarButtonItem *actionBarButtonItem;

@property (nonatomic, strong) UIPopoverController *popover; // added
.

나중에 파일의 맨 아래에서 조정 :

- (void)actionButtonClicked:(id)sender {
    NSArray *activities = @[[SVWebViewControllerActivitySafari new], [SVWebViewControllerActivityChrome new]];

    UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:@[self.self.webView.request.URL, self.self.webView.viewPrintFormatter] applicationActivities:activities];
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
        self.popover = [[UIPopoverController alloc] initWithContentViewController:activityController];
        [self.popover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];  
    }
    else {
        [self presentViewController:activityController animated:YES completion:nil];
    }
}
.

이것은 활동 팝버 및 인쇄 아이콘을 만지면 동일한 UI 글리치를 생성합니다.

그래서 간단한 데모와 함께 재현 가능합니다.

환경 : SDK 7.0, 현재 공용 Xcode (02/25/2014). 대상 : iOS6 및 iOS7.

편집 2/3 :

3 번째 문제에 관한 http://openradar.appspot.com/8668247

조사, Frederik

도움이 되었습니까?

해결책

모든 세 가지 문제를 모두 확인하여 Apple iOS 버그가됩니다.

첫 번째와 두 번째는 위에 언급 한 데모가 볼 수 있습니다.3RD는 Google 브라우저 앱이 보이는 (iPad에서)3RD 문제의 소스는 대화 상자 팝업 (실제로 내부 UIActivity Perminaly explore) 동안 UIWebView ViewPrintFormatter의 크기 조정 재설정입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top