View
Android での再利用を管理するソース コードはどこにありますか? このプロセスには 3 つの異なる部分が考えられますが、さらに多くの部分がある可能性があります。
View
が再利用できるかどうかを判断するロジックView
再利用可能な のプールを管理するコードView
プールから再利用可能なものを削除し、そのプロパティ値をリセットして、論理的に異なるものを表すコードView
編集:ブログ投稿Android 用アプリケーションの開発 – 落とし穴と癖では、次の例を示します。
public class PencilWise extends ListActivity {
View activeElement;
// ...
@Override
public void onCreate ( Bundle savedInstanceState ) {
// ...
this.getListView( ).setOnItemClickListener ( new OnItemClickListener ( ) {
public void onItemClick ( AdapterView<?> parent, View view, int position, long id ) {
MyActivity.this.activeElement = view;
MyActivity.this.showDialog ( DIALOG_ANSWER );
}
} );
}
}
この
showDialog
メソッドは、ユーザーが開いた質問を知る必要がある回答ダイアログを表示します。問題は、ダイアログが開くまでに、渡されたビューがonItemClick
再利用されている可能性があるためactiveElement
、ユーザーが最初にダイアログを開くためにクリックした要素を指していないことです!