次のコードは、UIWebView に読み込まれたページのタイトルを取得し、タイトルに「テーブル」という単語が含まれているかどうかを確認します。その場合、ツールバーが再表示されます。そうでない場合は、ツールバーを非表示にします。これは、最初はタイトルに「表」のないページがロードされたときに正常に機能し、タイトルに「表」が含まれているページを参照すると、ツールバーが表示されます。この問題は、タイトルに「テーブル」が含まれていないページに戻ると発生し、新しいタイトルが NSLog に表示されますが、ツールバーは消えません。
NSString * webtitle = [viewWeb stringByEvaluatingJavaScriptFromString:@"document.title"];
NSLog(@"Title is: %@", webtitle);
if ([webtitle rangeOfString:@"Table"].location == NSNotFound) {
[toolbar setHidden:YES];
} else {
[toolbar setHidden:NO];
}
どんな助けでも大歓迎です。
ありがとう!
編集:私はこれを実行していると言うべきでした
- (void)webViewDidFinishLoad:(UIWebView *)wv
{
}
編集 2: if が実行されたときに起動するように NSLogs を追加しました。
if ([webtitle rangeOfString:@"Table"].location == NSNotFound) {
NSLog(@"Hidden");
[toolbar setHidden:YES];
} else {
NSLog(@"Not Hidden");
[toolbar setHidden:NO];
}
「テーブル」のないページを参照すると「非表示」が返されますが、ツールバーは表示されているため、見た目はそのままです [toolbar setHidden:YES]; 何らかの理由で機能していません。誰にも手がかりはありますか?