私のAndroidアプリでは、ユーザーの操作によって頻繁に変化する長方形、線、円弧をたくさん描いています。
これで、onDraw()メソッド内にPaintオブジェクトが作成され、ローカル変数のままになり、メモリの問題が発生しなくなりました。
しかし、コードレビュー中に、これは間違いとして指摘されました。onDraw()が呼び出されるたびにnew()が呼び出されるため、これによりキャンバス上の描画が遅くなる可能性があると言われています。そのため、Paintオブジェクトをクラス変数として作成し、それらを1回だけ初期化し、onDraw()でプロパティを変更するだけで、画面が閉じたり破棄されたりしたときにさらに無効にするように求められます。
画面のUIが遅いとは思わなかったので、これが正しいことなのか、それとも以前の状態の方が良いのかを尋ねたいと思います。これが不必要な変更である可能性はないと思います。
提案を提供してください。