我试图在EditText中设置文本,但它说:

Type mismatch. 
Required: Editable 
Found: String

我的代码如下:

String name = "Paramjeet"
val nametxt = findViewById (R.id.nametxt) as EditText
nametxt.text = name

不要说使用setText,因为我使用的是kotlin,而不是Java。


当前回答

val editable = Editable.Factory.getInstance().newEditable(savedString)

editText.text = editable

其他回答

像这样使用:

edtTitle.setText(intent.getStringExtra(EXTRA_TITLE))
edtDesc.setText(intent.getStringExtra(EXTRA_DESC))

或者你可以使用extension属性:

var EditText.value
    get() = this.text.toString()
    set(value) {
            this.setText(value)
    }

使用.value=代替.text=

尝试使用nametxt。职位:nametxt.post ({nametxt。setText(“文本”)})

看一下EditText的API:

CharSequence文本,TextView。BufferType类型)

可编辑的获取文本()

链接:https://developer.android.com/reference/android/widget/EditText.html

使用setText(String),因为editText。text需要一个可编辑的,而不是字符串。