私はepubリーダーで作業していますが、単にhtmlファイルのパスを取得するためのリーダー構造を構築してUIWebView
にロードしてから、章をページングして表示します。 webViewのテキストが表示され、メモ、ハイライトテキスト、共有などの複数の機能が表示されます。すべてがうまくいっていますが、いくつかの本には大きな章(htmlファイルサイズ約180kb、普通は約30〜50kbです)が含まれているという特殊なケースがあります。この種の章では、テキストを選択するとUIMenuController
多くの時間が表示されます!最後に表示され、うまく動作していますが、この時間を待つユーザーには迷惑です(ここでは約7秒です!!)。私のビルドターゲットはiOS 4 & 5です。これはシミュレータで発生していますとデバイス..誰も助けを提供できますか?UIMenuControllerは非常にゆっくりと応答します
編集:私のViewControllerで
canPerformAction:
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
BOOL can = [super canPerformAction:action withSender:sender];
if(action == @selector(copyPressed::) ||
action == @selector(addNotePressed:) ||
action == @selector(sharePressed:) ||
action == @selector(highlightPressed:))
{
can = YES;
}
if (action == @selector(copy:) || action == @selector(_define:) || action == @selector(selectAll:) || action == @selector(select:))
{
can = NO;
}
return can;
}
「canPerformAction」関数によって発生している可能性が最も高いです。あなたの見た目はどうですか? – borrrden
私の編集をチェックしてください。 –
さて、それはありません...私の次の推測では、すべてのHTMLを1つの長いストリームにロードしており、メニューコントローラはポップオーバーをどこに置くべきかについて懸命に考える必要があります。インストゥルメントのタイムプロファイラ機能を使用すると、時間のかかる機能を確認できます。あなたがそれをした後、あなたは何がそんなに長くかかっているのかをよりよく知ることができます。それまでは、それを引き起こしていることを言うのは難しいです。 – borrrden