2016-11-03 1 views
0
- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(id)frame {  
    NSLog(@"javascript alert : %@",message);  
    UIAlertView* customAlert = [[UIAlertView alloc] initWithTitle:@"test" message:message delegate:nil cancelButtonTitle:@"확인" otherButtonTitles:nil];  
    [customAlert show]; 
} 

- (BOOL)webView:(UIWebView*)sender runJavaScriptConfirmPanelWithMessage:(nonnull NSString *)message initiatedByFrame:(nonnull WKFrameInfo *)frame completionHandler:(nonnull void (^)(BOOL))completionHandler{  
    UIAlertView* customAlert = [[UIAlertView alloc] initWithTitle:@"test" message:message delegate:nil cancelButtonTitle:@"확인" otherButtonTitles:@"취소", nil]; 
    [customAlert show]; 
    return true; 
} 

Ich will Titel UIAlertView ändern, wenn Sie Javascript Alarm oder Dialog erscheint bestätigen auf.Benutzerdefinierte UIAlertView Titel funktioniert nur für Alarm, nicht für confim Dialog

Javascript-Alarm scheint funktioniert gut, aber wenn verwenden Javascript Bestätigungsdialog,

dass Dialog nicht benutzerdefinierten Titel zeigt, wie tun soll.

Können Sie uns irgendeine Idee vorschlagen, warum? jede Hilfe wird sehr geschätzt.

enter image description here enter image description here

+0

UIAlertView wurde in iOS veraltet 8. Sie UIAlertController stattdessen verwenden sollten. –

Antwort

0

falsche Umsetzung. sollte diese Frage löschen, weiß aber nicht wie.

.h-Datei

-(void)webView:(UIWebView *)webView runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(id)frame; 
- (BOOL)webView:(UIWebView *)sender runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(id)frame; 

.m-Datei

- (BOOL)webView:(UIWebView *)sender runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(id)frame {   
    UIAlertView *confirmDiag = [[UIAlertView alloc] initWithTitle:@"test" message:message delegate:self cancelButtonTitle:NSLocalizedString(@"예", @"예") otherButtonTitles:NSLocalizedString(@"아니오", @"아니오"), nil]; 

    [confirmDiag show]; 
    while (confirmDiag.hidden == NO && confirmDiag.superview != nil) {    
     [[NSRunLoop mainRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01f]]; 
    } 

    return diagStat; 
} 

- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(id)frame { 
    NSLog(@"javascript alert : %@",message); 
    UIAlertView* customAlert = [[UIAlertView alloc] initWithTitle:@"test" message:message delegate:nil cancelButtonTitle:@"확인" otherButtonTitles:nil]; 
    [customAlert show]; 

} 
Verwandte Themen