将EditText数组转换为字符串数组 - Kotlin Android

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将EditText数组转换为字符串数组 - Kotlin Android相关的知识,希望对你有一定的参考价值。

我有一个EditTexts数组,我想将其转换为包含每个EditTexts的输入值的字符串数组。这是我的代码:

val textFields = arrayOf<EditText>(dialogView.findViewById(R.id.et_name),
            dialogView.findViewById(R.id.et_address), dialogView.findViewById(R.id.et_phoneNo),
            dialogView.findViewById(R.id.et_amount), dialogView.findViewById(R.id.et_remark))

如何使用最少的代码获取EditTexts值的String数组?

编辑:基本上我想将代码作为函数中的参数。我更愿意在不使用for循环的情况下完成它。也许是一个内联函数,它会将一个数组转换(在函数块中给出)将原始元素的每个元素(EditText)转换为字符串。到目前为止我找不到任何方法(虽然它可能会变得明显)。

我还需要将它用作vararg参数。

答案

Todo,你必须通过执行以下操作将其映射到字符串数组:

val newTextFieldStringArray = textFields.map { it.text.toString() }
Log.e("TEST", newTextFieldStringArray.toString()) // print it out

注意:map函数返回List。如果你想将它用作vararg参数,你可以使用toTypedArray()和扩展运算符*来实现。代码如下:

val varargArray = textFields.map { it.text.toString() }.toTypedArray()
myFunction(*varargArray)

private fun myFunction(vararg list: String) {}

以上是关于将EditText数组转换为字符串数组 - Kotlin Android的主要内容,如果未能解决你的问题,请参考以下文章

将rowdatapacket转换为数组,如何将mysql node.js api rowdatapacket转换为数组,将字符串转换为数组

js字符串每个数组前面数字转换为多少个数组

在javascript中如何将字符串转换为数组和数组转换为字符串

将字符串数组转换为字节数组

怎么将arraylist转换为字符串数组

将字符数组转换为字符串数组[重复]