2

複雑なレイアウトを初期化するアクティビティを開始します。これは、多くの画像、テキストビュー、EditText、Checbox、Spinner、および ActionListener を含むテーブルです。各項目の位置は、開始される呼び出し先によって異なります。したがって、情報は Intent に格納されます。

つまり、すべての項目が常に異なる位置にあるため、レイアウトを XML 経由で構築することはできません。

問題: この計算には多くの時間がかかります。アクティビティが開始されるまでに最大 400 ミリ秒かかる場合があります。これは非常に悪いです。

どうすればこれを回避できますか? 私の知る限り、レイアウトを事前計算することはできません。ビューを複製することはできません。別のアクティビティでそのビューを作成してここに割り当てると、クラッシュも発生します。

4

2 に答える 2

1

レイアウトを分割して構築し、ユーザーのために構造全体をアニメーション化します。完了するまでに 400 ミリ秒以上かかる場合がありますが、ユーザーは、美しいレイアウトが目の前で作成されるのを見る経験に夢中です。これ以上のアドバイスは、レイアウトの詳細がなければ難しいものです。

于 2012-04-21T12:55:24.190 に答える
0

また、400ミリ秒は多くの時間ではないと思います。

もう 1 つ試すことができるのは、xml ファイルでレイアウトを作成し、アクティビティですべての要素を再配置する関数を作成できることです。位置を変更するには、最初にビューのレイアウト パラメータを取得し、次に新しい位置を設定してから、新しい位置に従ってビューにレイアウト パラメータを再度設定します。

于 2012-04-21T11:32:44.350 に答える