0

[webView shouldStartLoadWithRequest:navigationType:]を使用して、UIWebViewのユーザーナビゲーションを制御します。私は文字列を次のような「isEqualToString」メソッドと比較していました。

NSString *requestString = [[request URL] absoluteString];
if ([requestString isEqualToString:@"http://www.myComapnyWeb.com"])  return YES;
else return NO;

デバイスがIOS4.3にあったとき、これは正常に機能していました。デバイスがIOS5(正確には5.1.1)にアップグレードされると、上記のロジックは失敗しました。一部のNSLogでは、URLがすべて小文字で返されるため(myCompanyWebではなくmycompanyweb)、上記の文字列の比較が失敗することに気付きました。

lowercaseStringメソッドとの比較を変更することで修正できます。他の誰かがこれを経験したかどうか知りたいです。他の解決策はありますか?そして将来、私たちはそのような変化を期待する必要がありますか?

4

1 に答える 1

2

試す:

NSString *requestString = [request.URL absoluteString];

それはあなたに正しいケースを与えるはずです。

Xcodeバージョン4.5でテストしました

「そのような変化を期待する」限り、彼らが変化を起こすことは常に可能です。時にはそれが良いこともあれば、時には....... =)

于 2012-10-11T21:12:03.350 に答える