Android 如何从Kotlin中的MultiSelectSpinner获取逗号分隔的项目ID

Android 如何从Kotlin中的MultiSelectSpinner获取逗号分隔的项目ID,android,kotlin,spinner,android-spinner,multi-select,Android,Kotlin,Spinner,Android Spinner,Multi Select,我在我的Kotlin项目中使用来自Github的此控件。我不知道如何从该控件获取选定项的Id,我需要将所有选定项的逗号分隔的Id字符串设置为tv\u engineer\u IdTextView控件 布局代码: <TextView android:id="@+id/tv_engineer_ids" android:layout_width="wrap_content" android:layout

我在我的Kotlin项目中使用来自Github的此控件。我不知道如何从该控件获取选定项的
Id
,我需要将所有选定项的逗号分隔的Id字符串设置为
tv\u engineer\u Id
TextView控件

布局代码:

<TextView
                android:id="@+id/tv_engineer_ids"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                />

            <io.apptik.widget.multiselectspinner.MultiSelectSpinner
                android:id="@+id/spin_engineer"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingTop="15dp"
                />
val engineers: ArrayList<String> = ArrayList<String>();
    addJobResponse.engineerList!!.forEach {
        engineers.add(it.name!!);
    }

    spin_engineer.setItems(engineers)
            .setListener<BaseMultiSelectSpinner>(object: BaseMultiSelectSpinner.MultiSpinnerListener {
                override fun onItemsSelected(selected:BooleanArray) {
                    //Toast.makeText(context, selected.toString(), Toast.LENGTH_LONG).show()
  // Need to set comma separated IDs here
                    selected.forEach {
                        Toast.makeText(context, it.toString(), Toast.LENGTH_LONG).show()
                    }

                }
            })
data class Engineer (
    @SerializedName("Id")
    @Expose
    var id: Long? = null,
    @SerializedName("Name")
    @Expose
    var name: String? = null)

首先,不要在开始时使用
forEach
并将工程师逐个添加到新的
ArrayList
,您可以使用:

最后,对于逗号分隔的列表:


谢谢,触觉回答。
val engineers: List<String> = engineerList.map { it.name!! }
val selectedEngineers: List<Engineer> = engineerList
        .filterIndexed { index, engineer -> selected[index] }
println(selectedEngineers.joinToString { it.id!!.toString() })