kotlin TextView、EditText的相關監聽的常用使用
阿新 • • 發佈:2019-01-31
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) {//輸入文字產生變化的監聽} })
有什麼問題歡迎留言討論