2016-11-03 5 views
0
私はjavascriptのアラートまたはが ダイアログポップを確認したときにUIAlertViewのタイトルを変更したい
- (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; 
} 

のために、警告のために働きます。カスタムUIAlertViewのタイトルだけではないconfimダイアログ

のjavascriptのアラート行うことになってダイアログがカスタムタイトルを示していないこと

、正常に動作しますが、使用時javascriptの確認ダイアログようです。

あなたはどんなアイデアを提案できますか?任意のヘルプは非常に高く評価されます。

enter image description here enter image description here

+0

UIAlertViewは、あなたが代わりにUIAlertController使用する必要があるのiOS 8で廃止されました。 –

答えて

0

間違って実装。この質問を削除する必要がありますが、どのように知っている。

.hファイル

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

.mファイル

- (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]; 

} 
関連する問題