欢迎来到代码驿站!

Android代码

当前位置:首页 > 移动开发 > Android代码

kotlin中EditText赋值Type mismatch方式

时间:2020-10-18 11:05:12|栏目:Android代码|点击:

在kotlin中可以不用使用findViewById来初始化控件,但是在给EditText赋值时使用editText.text = "value"时会提示Type mismatch,这是因为EditText在推断types时出现问题。

为了避免types不匹配,使用Editable类的Factory内部类,来解决这个问题。

etStartTime.text = Editable.Factory.getInstance().newEditable("test")

补充知识:kotlin TextView、EditText的相关监听的常用使用

kotlin TextView、EditText的相关点击监听、长按监听、输入变化监听等的常用使用

会与以前的Android Java写法有一点点的区别。

//TextView点击监听 两种方式
 
//①
TextView.setOnClickListener {//这里写实现的功能}
 
//②
TextView.setOnClickListener(object :OnClickListener{ 
override fun onClick(v: View?) {//这里写实现的功能}
})
 
//TextView长按监听 两种方式
//①
TextView.setOnLongClickListener { 
//这里写实现的功能 
true}
 
//②
TextView..setOnLongClickListener(object : OnLongClickListener {
override fun onLongClick(v: View?): Boolean {
//这里写实现功能
return true
}
})

EditText监听与TextView几乎一样,但是它有输入内容变化的监听。

//EditText点击和长按监听 同TextView写法一样。下面写一个监听输入变化的方法 两种
//①、当前页,继承TextWatcher【例如:class XXXActivity : BaseActivity(), TextWatcher】
 
EditText.addTextChangedListener(this)//监听当前this,然后重写三个方法(输入后,输入前,输入文字产生变化)
 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) {
  //输入文字产生变化的监听
 }
 
//②、另一种写法,直接监听
EditText.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) {//输入文字产生变化的监听}
})

有什么问题欢迎留言讨论

上一篇:Android中ListView Item布局优化技巧

栏    目:Android代码

下一篇:ionic App 解决android端在真机上tab处于顶部的问题

本文标题:kotlin中EditText赋值Type mismatch方式

本文地址:http://www.codeinn.net/misctech/13025.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有