kotlin中EditText赋值Type mismatch方式

作者:yanjingtp 时间:2023-06-19 03:52:56 

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

kotlin中EditText赋值Type mismatch方式

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

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

kotlin中EditText赋值Type mismatch方式

补充知识: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) {//输入文字产生变化的监听}
})

有什么问题欢迎留言讨论

来源:https://blog.csdn.net/yanjingtp/article/details/81383032

标签:kotlin,EditText,Type,mismatch
0
投稿

猜你喜欢

  • Android实现微信登录的示例代码

    2022-04-04 15:55:56
  • Android实现随机圆形云标签效果

    2023-02-23 02:10:42
  • SpringCloud实战之Zuul网关服务

    2023-01-30 11:33:53
  • Java事件处理步骤讲解

    2023-10-14 11:49:57
  • springboot jpa 延迟加载问题的2种解决

    2021-10-14 03:05:20
  • 如何在XML中定义菜单

    2023-08-08 11:49:33
  • 一篇文章带你了解XGBoost算法

    2021-10-10 01:14:45
  • C#与js实现去除textbox文本框里面重复记录的方法

    2022-08-02 03:14:06
  • C#泛型概念的简介与泛型的使用

    2023-10-12 05:13:02
  • 浅谈Android Classloader动态加载分析

    2022-01-28 13:18:05
  • C#中 MessageBox的使用技巧

    2023-06-25 16:15:48
  • Android WebView基础应用详解

    2023-09-30 07:36:46
  • Android绘制钟表的方法

    2023-09-01 13:18:03
  • Spring Boot使用AOP实现REST接口简易灵活的安全认证的方法

    2023-04-10 04:38:44
  • SpringBoot整合websocket实现即时通信聊天

    2022-12-12 15:14:32
  • Android Bitmap和Drawable相互转换的简单代码

    2022-01-26 11:09:01
  • SpringBoot 整合 ElasticSearch操作各种高级查询搜索

    2023-03-25 17:12:40
  • SpringBoot全局配置long转String丢失精度的问题解决

    2023-02-19 22:58:49
  • MyBatis快速入门(简明浅析易懂)

    2022-05-25 23:08:55
  • SpringBoot集成Jpa对数据进行排序、分页、条件查询和过滤操作

    2022-03-06 19:17:50
  • asp之家 软件编程 m.aspxhome.com