kotlin中EditText赋值Type mismatch方式

所属分类: 软件编程 / Android 阅读数: 56
收藏 0 赞 0 分享

在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) {//输入文字产生变化的监听}
})

有什么问题欢迎留言讨论

以上这篇kotlin中EditText赋值Type mismatch方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Android 自定义球型水波纹带圆弧进度效果(实例代码)

最近小编接到一个这样的需求,需要实现一个圆形水波纹,带进度,两层水波纹需要渐变显示,且外围有一个圆弧进度。今天小编给大家分享实例代码,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

Flutter 实现下拉刷新上拉加载的示例代码

这篇文章主要介绍了Flutter 实现下拉刷新上拉加载的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Windows实现Flutter环境搭建及配置这一篇就够了

这篇文章主要介绍了Windows实现Flutter环境搭建及配置这一篇就够了,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Android利用碎片fragment实现底部标题栏(Github模板开源)

Fragment可以作为Activity的组成部分,一个Activity可以有多个Fragment,这篇文章主要介绍了Android利用碎片fragment实现底部标题栏(Github模板开源),需要的朋友可以参考下
收藏 0 赞 0 分享

android studio 的下拉菜单Spinner使用详解

这篇文章主要介绍了android studio 的下拉菜单Spinner使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

解析Android 8.1平台SystemUI 导航栏加载流程

这篇文章主要介绍了Android 8.1平台SystemUI 导航栏加载流程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Android仿微信录音功能

这篇文章主要为大家详细介绍了Android仿微信录音功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android仿微信键盘切换效果

这篇文章主要为大家详细介绍了Android仿微信键盘切换效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android超清晰6.0权限申请AndPermission

这篇文章主要介绍了Android超清晰6.0权限申请AndPermission,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android仿微信录制语音功能

这篇文章主要介绍了Android仿微信录制语音功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多