当我正在进行Swing编程时,javax.swing.table.AbstractTableModel
正在使用fireTableCellUpdated(row, col)
,让我具体说明我要更新的GUI行和列。
然而,当来到ArrayAdapter
时,我意识到他们只提供notifyDataSetChanged
。我原以为我可以访问notifyDataSetChanged(row)
,让我更新我感兴趣的项目。我不想更新整个列表。
我想知道为什么我们没有ArrayAdapter的notifyDataSetChanged(row)。或者,我错过了什么?
答案 0 :(得分:2)
我想知道为什么我们没有ArrayAdapter的notifyDataSetChanged(row)。
询问Google。 ; - )
或者,我错过了什么?
不。
您(通过调用notifyDataSetChanged()
)只是告诉ListView
重绘整个列表,即使您只需要更新特定项目。我认为谷歌有充分的理由说明为什么会被忽略,但就目前情况而言,你完全对调用notifyDataSetChanged()
很好。
答案 1 :(得分:1)
notifyDataSetChanged()
对特定子视图不起作用。它发送listview / tablerows的信号以重新填充新数据。因此,使用此方法告诉整个View使用新数据重新绘制。
观看此视频以获得更熟悉的适配器。 http://www.youtube.com/watch?v=wDBM6wVEO70