Android 活动和适配器之间的数据

Android 活动和适配器之间的数据,android,Android,我使用BaseAdapter显示ListView的行。 活动和适配器写在两个不同的类中。 在ListActivity中,我使用以下行的代码集数据 String[] FileName = {"a", "b", "c"}; MyAdapter a = new MyAdapter(this, FileName); setListAdapter(a); 在适配器中,它在每一行中显示文件名。 但它可能会更改文件名。 因此,在活动中,我想获取已更改的数组文件名。 我该怎么办 适配器代码: private

我使用BaseAdapter显示ListView的行。 活动和适配器写在两个不同的类中。 在ListActivity中,我使用以下行的代码集数据

String[] FileName = {"a", "b", "c"};
MyAdapter a = new MyAdapter(this, FileName);
setListAdapter(a);
在适配器中,它在每一行中显示文件名。 但它可能会更改文件名。 因此,在活动中,我想获取已更改的数组文件名。 我该怎么办

适配器代码:

private String[] name = null;
public BookmarkListAdapter(Context ctxt, String[] s) {
name = s;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewTag viewTag;
if(convertView == null) {
convertView = myInflater.inflate(R.layout.row_bookmark_list, null);
viewTag = new ViewTag((TextView)convertView.findViewById(R.id.row_bookmark_info));
convertView.setTag(viewTag);
}
else {
viewTag = (ViewTag) convertView.getTag();
}
viewTag.n.setText(name[position]);
name[position] = name[(position + 1) % 3];   //change
}
class ViewTag {
TextView n;
public ViewTag(TextView t) {
this.n = t;
}
}
在本例中,数组更改为{“b”、“c”、“a”}。 在活动中,如何获取已更改的数组

But it may change the FileName. 
是否要更改
文件名的值
,然后可以调用
您的适配器.notifyDataSetChanged()
,它将更新您的值

或者,如果您想更改变量,则需要重新实例化适配器,并将新变量名传递给它


注意:如果没有必要更改可变名称,则不要这样做,并在每次需要时更新该值。

您可以修改问题以澄清吗?这里您已硬编码了文件名。因此,更新文件名不起作用。为此,您需要更改对文件名的引用,这意味着,在MyAdapter中使用更新的文件名之前,您应该引用更新的文件名,而不是硬编码。我已经编辑了有问题的代码。