Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android-从阵列适配器中删除<;字符串>;_Java_Android - Fatal编程技术网

Java Android-从阵列适配器中删除<;字符串>;

Java Android-从阵列适配器中删除<;字符串>;,java,android,Java,Android,我正在从资源数组创建ArrayAdapter。然后我想使用arrayAdapter.remove(String)方法从列表中删除一个项目。我使用arrayAdapter.getItem(int位置)找到正确的字符串。但是当我调用remove方法时,我最终得到了UnsupportedOperationException,我不知道发生了什么 6月20日编辑 我执行的操作是从资源中删除,而不是直接从适配器中删除,并通知适配器删除。我正在对公共布尔值onContextItemSelected(MenuI

我正在从资源数组创建
ArrayAdapter
。然后我想使用
arrayAdapter.remove(String)
方法从列表中删除一个项目。我使用
arrayAdapter.getItem(int位置)
找到正确的字符串。但是当我调用remove方法时,我最终得到了
UnsupportedOperationException
,我不知道发生了什么

6月20日编辑
我执行的操作是从资源中删除,而不是直接从适配器中删除,并通知适配器删除。我正在对公共布尔值onContextItemSelected(MenuItem项)执行操作;删除此方法后,我得到一个

ArrayAdapter.createViewFromResource(int, View, ViewGroup, int) line: 398    

NullPointerException

我认为在我从参考资料中删除该项后,某些内容的配置不正确

ArrayAdapter正在呈现资源数组中的内容。您不应该试图直接更改阵列适配器的内容。而是更改基础资源数组

因此,基本上只需从资源数组中删除该项

如果您使用的是这样定义的列表:

List<String> resources = YOUR RESOURCE LIST;

这在大多数情况下都有效。在某些情况下,您将使用在呈现列表视图的活动之外修改的列表。在这些情况下,将ArrayAdapter的notifyOnChanged(我想,我前面没有API引用)设置为false。。。然后手动调用notifyDataSetChanged。

ArrayAdapter正在呈现资源数组中的内容。您不应该试图直接更改阵列适配器的内容。而是更改基础资源数组

因此,基本上只需从资源数组中删除该项

如果您使用的是这样定义的列表:

List<String> resources = YOUR RESOURCE LIST;

这在大多数情况下都有效。在某些情况下,您将使用在呈现列表视图的活动之外修改的列表。在这些情况下,将ArrayAdapter的notifyOnChanged(我想,我前面没有API引用)设置为false。。。然后手动调用notifyDataSetChanged。

您应该从数组中删除元素,然后通知适配器:

itemCart.m_items.remove(<index of element to remove>);
this.m_adapter.notifyDataSetChanged();
itemCart.m_items.remove();
此.m_适配器.notifyDataSetChanged();

注意:使用搜索问题已经存在。

您应该从数组中删除元素,然后通知适配器:

itemCart.m_items.remove(<index of element to remove>);
this.m_adapter.notifyDataSetChanged();
itemCart.m_items.remove();
此.m_适配器.notifyDataSetChanged();
注意:使用搜索问题已经存在