ResourceCursorAdapter派生自并CursorAdapter添加了mInflater(在构造函数中初始化)。我已经看到不止一个自定义适配器示例源自SimpleCursorAdapter(反过来基于),它们也出于相同目的ResourceCursorAdapter引入了自己的。myInflater
是否有任何理由mInflater不制作protected而不是private使其也可以在派生类中使用?
更新:澄清我的问题。
首先,我只是好奇为什么mInflater没有被保护。ResourceCursorAdapter在设计期间这样做的原因是什么,因为在使用或其子类SimpleCursorAdapter作为基类时会非常方便?我终于通过扩展CursorAdapter. 无论如何,我只是好奇,我可能忽略了一些重要的事情......
我想使用这项ViewHolder技术。因此,我想覆盖newView(它创建一个视图持有者并将其附加到新创建的视图)和bindView(它获取附加的视图持有者并从光标填充数据)。对于newView方法实现,我需要调用inflater。如果我使用SimpleCursorAdapter,我将定义mInflater由我的子类构造函数初始化的方式与 完全相同ResourceCursorAdapter(稍微优化newView)。mInflater出于这个原因,如果超类也可用于子类(即无需在子类中再次定义它),那就太好了。这是我问题的核心。