尝试将hero,comic
24-HOUR MAN/EMMANUEL,AA2 35
3-D MAN/CHARLES CHAN,AVF 4
3-D MAN/CHARLES CHAN,AVF 5
3-D MAN/CHARLES CHAN,COC 1
3-D MAN/CHARLES CHAN,H2 251
3-D MAN/CHARLES CHAN,H2 252
3-D MAN/CHARLES CHAN,M/PRM 35
3-D MAN/CHARLES CHAN,M/PRM 36
3-D MAN/CHARLES CHAN,M/PRM 37
设置为hero1,hero2
"LITTLE, ABNER","PRINCESS ZANDA"
"LITTLE, ABNER","BLACK PANTHER/T'CHAL"
"BLACK PANTHER/T'CHAL","PRINCESS ZANDA"
"LITTLE, ABNER","PRINCESS ZANDA"
"LITTLE, ABNER","BLACK PANTHER/T'CHAL"
"BLACK PANTHER/T'CHAL","PRINCESS ZANDA"
"STEELE, SIMON/WOLFGA","FORTUNE, DOMINIC"
"STEELE, SIMON/WOLFGA","ERWIN, CLYTEMNESTRA"
值时,我尝试了将EditText
转换为Int
将接受的值的各种方法,但都失败了:
Int
如何将EditText
设置为 processButton.setOnClickListener {
var intNo = inputText.text as Int
intNo *= 2
outputText.text = intNo as String // error = "required editable"
outputText.text = intNo.toString() // err: type mismatch
outputText.text = Int.toString(intNo) // type mismatch reqd editable
outputText.text = "What is going on?" // type mismatch reqd editable
}
值?
答案 0 :(得分:17)
var a: Int = 12
var s: String = a.toString()
这应该适用于此。
答案 1 :(得分:3)
尝试给定代码它将起作用。我在这里做的是我首先将inputText转换为String然后转换为Int。在我乘以2后,我通过转换为字符串为outputText赋值。
processButton.setOnClickListener {
var intNo = inputText.text.toString().toInt()
intNo *= 2
//println(intNo.toString())
val myString = intNo.toString()
// If you using outputText as Editable then use this
outputText.text = SpannableStringBuilder(myString)
}
答案 2 :(得分:2)
这里有几件事情,为了理解它们,我们来看看getText
所拥有的各种setText
和EditText
方法:
Editable getText()
void setText(CharSequence text)
void setText(@StringRes int resid)
// many other setText methods with buffer options
所以Kotlin在这里让你使用属性语法的是它创建了一个text
属性。用于该属性的吸气剂是显而易见的,因为只有一个。该属性的setter 应该采用CharSequence
参数的那个(它有意义,Editable
扩展CharSequence
),但实际上是尝试分配除Editable
以外的任何内容都不起作用。请参阅this issue。
要解决手头的问题,您可以阅读EditText
中的值并将其转换为String
,如下所示:
val input = inputText.text.toString()
然后,您可以使用标准库中的toInt()
函数将其转换为Int
(请注意,如果无法解析String
,则会抛出异常):
val doubled = input.toInt() * 2
最后,您可以通过调用传统Java样式的EditText
setter来设置setText
的值,并传入String
:
inputText.text.setText(doubled.toString())
由于String
和Int
之间的双向转换,以及此处生成text
属性的奇怪方式,有点混乱,但这是做的方法它。如果你对它的外观感到困扰,你总是可以隐藏扩展属性背后的一些机制。
答案 3 :(得分:0)
var num: Int = 5
要转换为字符串
num.toString()