View
Android 中管理重用的源代码在哪里?我可以想到这个过程的三个不同部分,但可能还有更多:
- 确定 a
View
是否有资格重复使用的逻辑 View
管理可重复使用的 s池的代码- 从池中删除可重用
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
将不再指向用户首先单击以打开对话框的元素!