首页 > 解决方案 > 已填充后将项目添加到微调器

问题描述

我在代码的某处创建了一个微调器并用值填充它

val dataAdapter = ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, some_list)

dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
mySpinner?.adapter = dataAdapter

我的问题是,在 Kotlin 的完全不同的代码部分中应用适配器后,如何向此微调器添加更多项目?例如,在服务器请求之后

我了解您可以通过以下方式访问适配器

mySpinner?.adapter

但是我该如何添加呢?

编辑。 我了解以下代码中有解决方案

some_list.add("Apple");
dataAdapter.notifyDataSetChanged();

但是,这需要在类或全局级别访问 3 个数据项,而不仅仅是 1 个(微调器)。我知道这可能是唯一的方法,它只是次优,谢谢您的回复

标签: androidkotlinandroid-arrayadapterandroid-spinner

解决方案


您可以使用最新列表创建一个新适配器,然后将其分配给微调器,或者您可以使用您的项目列表创建一个自定义适配器,然后将新项目添加到列表中并调用 notifyDataSetChanged()


推荐阅读