2017-02-11 125 views

回答

2

我能夠使用未公開的API修復此問題。其問題涉及隱藏/取消隱藏密碼視圖。

/* 
From class dump of pdf kit 
@interface PDFPasswordViewController : NSViewController 
{ 
NSTextField *_passwordField; 
NSTextField *_passwordPrompt; 
NSTextField *_passwordInstruction; 
NSView *_passwordView; 
PDFView *_pdfView; 
} 

- (void).cxx_destruct; 
- (void)_commonInit; 
- (void)passwordEntered:(id)arg1; 
- (void)setPDFView:(id)arg1; 
- (void)loadView; 

@end 
*/ 

/* 
@private 
PDFViewPrivate* _private; 
Available in PDFView.h file 
*/ 
id PDFViewPrivate = [self.pdfView valueForKey:@"_private"]; 
if (PDFViewPrivate) 
{ 
    NSViewController *passwordViewController = [PDFViewPrivate valueForKey:@"passwordViewController"]; 
    NSView *passwordView = [passwordViewController valueForKey:@"_passwordView"]; 
    if (self.pdfView.document.isLocked) 
    { 
     NSTextField *passwordField = [passwordViewController valueForKey:@"_passwordField"]; 
     // Reset last password 
     [passwordField setStringValue:@""]; 
     // Add password view 
     passwordView.hidden = NO; 
    } 
    else 
    { 
     passwordView.hidden = YES; 
    } 
} 

PDFPasswordViewController僅在10.12

+0

蘋果錯誤ID爲30479684可用 –