首选项中的onCreateView
和onBindView
方法有什么区别?
在文档中说onBindView
:
为什么在我的布局中的Views上设置属性如此好呢?目前,我正在onCreateView
方法中设置属性,并且一切似乎都可以正常工作。
根据我的经验,这两种方法似乎总是一起调用。也许在某些情况下仅调用onBindView
?
最佳答案
onCreateView()
用于创建最终将包含首选项UI的View层次结构。 onBindView()
用于将实际数据绑定(bind)到在onCreateView()
中创建的View层次结构。
该模式将 View 层次结构(已缓存)的创建与数据到该 View 层次结构的绑定(bind)分开。对于首选项,onCreateView()
仅被调用一次,但是每次UI需要加载首选项 View 时,onBindView()
都会被调用。
我猜您当前的设置有效,因为您永远不会更改在“首选项”上设置的属性。如果需要动态,最好在onBindView()
中设置View层次结构的属性。
(顺便说一句,在CursorAdapters中也可以看到这种 View 创建与绑定(bind)设计模式,在该模式中,它只能创建足够的 View 以显示在屏幕上,但会不断将这些 View 绑定(bind)到新数据。)
关于android - 首选项的onCreateView和onBindView方法之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7346890/