android - Kotlin Clearing 单击时清除编辑文本
问题描述
So I am having issues finding a Kotlin way to clear a edit number field when the input is selected to enter a number.
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//MyCode
val submitButton: Button = findViewById(R.id.submit)
var quarterQuan: EditText = findViewById(R.id.quarterInput)
var dimeQuan: EditText = findViewById(R.id.dimeInput)
val quarterEditTextValue = quarterQuan.text.toString().toFloat()
val dimeEditTextValue = dimeQuan.text.toString().toFloat()
val dime = Dime()
val quarter= Quarter()
var quarterTotal = quarter.quarterVal*quarterEditTextValue
var dimeTotal = dime.dimeVal*dimeEditTextValue
var cashTotal = dimeTotal + quarterTotal
submitButton.setOnClickListener{
var resultTextViewLabel: TextView = findViewById(R.id.textResult)
resultTextViewLabel.text = cashTotal.toString()
}
}
}
我试图做一些没有成功的事情......
quarterQuan.setOnClickListener{
editText.getText().clear();
}
解决方案
在范围内:首先从您的(例如editTextU)onCreate
定义一个(例如edTex),然后为它编写一个侦听器,以调用函数。val
EditText
cleartext()
val edTex: EditText = findViewById(R.id.editTexU)
edTex.setOnClickListener {cleartext()}
//edTex.setOnFocusChangeListener {view, b -> cleartext() }
为类创建toEditable()
函数String
。和写 cleartext()
函数。
fun String.toEditable(): Editable = Editable.Factory.getInstance().newEditable(this)
fun cleartext()
{
var str=""
editTexU.text=str.toEditable()
}
推荐阅读
- scala - 在Scala中的函数中导入包时将导入多少次
- javascript - 获取 api 在 macOS 和 iphone 的 chrome 上不起作用
- c++ - Linux SCHED_FIFO 不考虑线程优先级
- assembly - 如何使用 RISC-V 架构的 C.ADDI4SPN 和 C.ADDI16SP 指令(压缩子集)?
- java - JavaFX 读取文本文件并将其显示到多个文本字段
- python - 在pygame中画线填充三角形
- r - 如何设置中值横杆以在因子内对齐?
- python - Pylint 不执行
- google-apps-script - 将 Hello Sign API 连接到应用程序脚本项目
- sql - 使用sql合并来自2个数据库的列