UipopoverControllerは、何らかの理由で自分自身を複製します
-
15-10-2019 - |
質問
非常に独特のバグ:
私はそのようなuipopoverControllerを飛び出すBarbuttonitemを持っています:
-(void) addNewProjectButtonClicked:(id)sender
{
//Some Preparations....
[popover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
予想どおり、ポップオーバーコントローラーが適切な場所に表示されます。
今、私は触れているときにそれを期待しています どこでも ポップオーバーの外では却下されます。
まあ、唯一の問題は、古いものを却下して予想どおりに新しいものを提示する代わりに、私が再びBarbutton(ポップオーバーをポップオーバーにポップしたもの)を叩いたとき、結果は 別 既存の上にポップオーバー。つまり、何度も何度も押し込むと、他の場所で複数のクリックでのみ却下できるポップオーバーの山があります。
ここでは、ここでシングルトンのデザインパターンの缶を使用できることは知っていますが、それを処理するための簡単で組み込みの方法はありませんか?
ありがとう!
解決
私は数ヶ月前に同じ問題に遭遇しました、私がタップしたとき、それは自分自身を却下すると思いました なんでも しかし、そうではありません。
私がこれを扱っている方法は、古いポップオーバーへの言及を維持し、それを却下することです UIBarButtonItem
タップされています。
-(void) addNewProjectButtonClicked:(id)sender
{
[popover dismissPopoverAnimated:YES];
// Set it up again.
[popover ...];
}
簡単なメモリ管理のためにプロパティを使用したり、自分で処理することもできます。
所属していません StackOverflow