【发布时间】:2019-03-30 00:08:13
【问题描述】:
我已尝试阅读此主题:Android - java - count words
但它对我不起作用。
假设我在 android 多行编辑文本中有这些词:
我
上午
非常非常
开心
现在
所以我想计算单词的数量,然后从该多行编辑文本中获取整数“7”。该怎么做?
这个我试过了,还是不行:
multilineEditText.addTextChangedListener(object: TextWatcher {
override fun afterTextChanged(s: Editable?) {
}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
val words = s.toString().trim()
numberOfInputWords = words.split("\\s+").first().length
wordsCounterTextView.text = "$numberOfInputWords"
}
})
但是这段代码对我不起作用,因为它没有显示正确的数字。
来自线程Android - java - count words
据说可以用someString.split("\\s+").length
但我在使用.split("\\s+") 后无法访问.length。像这样
这就是我在代码中使用first() 的原因,即使它也不起作用。
【问题讨论】:
-
这到底是怎么回事?您是否获得了意想不到的价值?它崩溃了吗?你的设备爆炸了吗?当你调试它时你发现了什么?它在哪个特定点出错?为了解决当前的问题,必须尝试什么?
-
@MikeM。对不起,我已经编辑了我的问题,现在我已经添加了原因
-
words.split("\\s+".toRegex()).size -
@underoid 是的,这就是答案
标签: android kotlin android-edittext