トップページ > プログラム > 2015年10月04日 > UU85SDMl

書き込み順位&時間帯一覧

25 位/158 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000100001002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Androidプログラミング質問スレ revision49 [転載禁止]©2ch.net

書き込みレス一覧

Androidプログラミング質問スレ revision49 [転載禁止]©2ch.net
680 :デフォルトの名無しさん[sage]:2015/10/04(日) 16:44:25.69 ID:UU85SDMl
ListViewのパフォーマンス向上について質問があります。

@ViewHolderを使ってfindViewByIdの回数を減らし
パフォーマンスを向上させることが一般的だと思いますが、
ViewHolderを使わず各View(ImageViewやTextView)を操作する度に
getTag()で呼び出す方法はパフォーマンス向上に繋がっているのでしょうか?
とある参考書のListViewサンプルで、getView()内でgetTag()を何度も呼び出していました。
通常はViewHolderで1回だけgetTag()を使うと思うのですが、
この参考書があえてViewHolderを使っていない理由が分かりません。

AgetView()内でAsyncTaskを用いて画像の読み込みを行っています。
executeOnExecutor()の並列処理で読み込んでいるのですが、
他の処理にも非同期処理を用いているためRejectedExecutionExceptionが発生します。
ThreadPoolExecutorを使ってmaximumPoolSizeを128よりも大きくしようと考えているのですが、
maximumPoolSizeを増やしすぎると別の問題が発生するのでしょうか?

よろしくお願いします。
Androidプログラミング質問スレ revision49 [転載禁止]©2ch.net
684 :デフォルトの名無しさん[sage]:2015/10/04(日) 21:05:21.91 ID:UU85SDMl
>>683
ありがとうございます。
やはりfindViewByIdの多用を避けることに意味がありそうですね。

非同期の処理については、
そもそもmaximumPoolSizeを128よりも必要とする実装がダメというブログもあったので
実装を見直すべきなのかもしれないですね。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。