我有一个从我们将调用ArrayAdapter
的覆盖派生的自定义适配器。我手动将适配器创建的 s 添加到 LinearLayout 中,如下所示:getView()
CustomObjectAdapter
View
m_adapter = new CustomObjectAdapter(this.getApplicationContext(),
R.layout.custom_object_layout,
m_customObjectArrayList);
m_linearLayout = (LinearLayout)findViewById(R.id.custom_object_list_linear_layout);
for (int i = 0; i < m_adapter.getCount(); i++) {
// Create the view for the custom object
View view = m_adapter.getView(i, null, null);
m_linearLayout.addView(view);
}
LinearLayout
我用s填充 aView
而不是使用 a ListView
,因为它包含在Fragment
我希望整个区域可滚动的 a 中 - 而不仅仅是ListView
. 我在这个 StackOverflow 问题中找到了这个解决方案:Using a ListAdapter to fill a LinearLayout inside a ScrollView layout。
在填充这些View
s 的同一类中,适配器getView()
方法中使用的数据被更新,然后我调用m_adapter.notifyDataSetChanged()
. 但是,该getView()
函数随后不会被调用。在代码的另一个区域,我正在更新以ListView
相同方式(而不是 a LinearLayout
)连接到 a 的适配器,并且它正在适当地更新。有谁知道我做错了什么?