何時間も検索しましたが、適切な解決策が見つかりませんでした。やりたいこと: ListFragment では、onListItemClick(...) メソッドを使用してクリック イベントを処理します。ここでは、行アイテムの背景を変更します。しかし、残念ながら onListItemClick(...) が呼び出されるたびに、アダプターからの getView() も呼び出され、8 つの表示されている行アイテムすべてが更新されます。これには時間がかかります: 0.5 秒です。行のレイアウトが非常に複雑であるため (2 つの画像、8 つの TextView)。そこで、クリックされた行だけを更新したい。このソリューションを使用したいのですが、他の 7 行の項目が更新されても効果がありません。私はすでにこれらのアドバイスに従ってリストをスピードアップしましたが、それでもまだ遅いです.
どんな助け、アイデア、考えも大歓迎です。:) ありがとうございました!
[編集]
いくつかの新しいアイデアを提供してくれた CommensWare に感謝します。私が今したことは、トレースビューが何を言っているのかを確認することでした。その結果、遅延は 2 つの部分に分割されます。遅延の最初の 300 ミリ秒は、22.000 を超える呼び出しで「FastXMLSerialzier.escapeAndAppendString()」を受け取ります。それはたくさんのようです!後半では、ビューとレイアウトの onMeasure() メソッドが多数、場合によってはすべて呼び出されます。
私が試したこと:すべてのテキストビューにアダプターの静的ダミー値を入力し、画像をロードしてその部分を除外しました。何も変わらず、traceview は同じ画像を表示します。2 回目の試行では、リスト アイテムの LinearLayout を調べ、見つかったすべての「wrap_content」を「match_parent」に置き換えましたが、何もありませんでした。まだ同じ。
私はまだあなたの考えやヒントを待っています。:)