皮皮网

皮皮网

【源码 工控流程】【卓越时时彩源码】【ngbook2 源码】setonclicklistener源码

时间:2024-11-20 14:24:55 分类:知识

1.Kotlin之设置监听
2.在android中怎样给整个页面设置监听事件

setonclicklistener源码

Kotlin之设置监听

       æ¢äº†ä¸€ç§è¯­è¨€ï¼Œå‡ ä¹Žä»€ä¹ˆéƒ½æ˜¯é‡æ–°å­¦ï¼Œè¯´å¥½äº†kotlin跟Java很像呢?设置个监听就要炸了。。

        TextView点击监听有两种方式,第一种是:

        TextView.setOnClickListener {

        //这里写实现的功能

        }

        比较方便了

        下面是第二种:

        TextView.setOnClickListener(object :OnClickListener{

        override fun onClick(v: View?源码) {

        //这里写实现的功能

        }

        })

        这里就跟着Java一样了

        TextView长按监听也两种方式,就是以上的两种方式,不算很难,就不粘贴了。

        EditText点击和长按监听同TextView写法一样。下面写一个监听输入变化的方法,有两种,我主要用这一种继承TextWatcher【例如:class XXXActivity : BaseActivity(), TextWatcher】:

        监听当前this,然后重写三个方法(输入后,输入前,输入文字产生变化)

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

        })

       æœ€é‡è¦çš„,是button的监听(MD我连这个都不会。。。)网上查了一下,可以分为3种,使用匿名内部类,实现OnClickLinstener接口,或者制定xml的onclick属性。

        匿名内部类是最简单的:

           bt_click.setOnClickListener {

        Toast.makeText(this,"点击了",Toast.LENGTH_SHORT).show();

           }

        就是这样,kotlin中内部类可以使用外面类的东西.

        然后全局实现onclicklistener接口:

        bt_click.setOnClickListener(this)

        ·····

        override fun onClick(v: View?) {

           when (v?.id) {

             R.id.bt_click ->

        Toast.makeText(this, "点击了", Toast.LENGTH_SHORT).show()

           }

         }

        感觉这样比较整齐了一点,这种方法与java的区别是没有implements关键字表示实现接口。when就相当于java中的switch。“:”符号改为了“->”。也更简洁了。

        指定onclick属性跟这个差不多:

        fun click(v: View?) {

           when (v?.id) {

             R.id.bt_click ->

        Toast.makeText(this, "点击了", Toast.LENGTH_SHORT).show()

           }

         }

         android:onClick="click"

        关于toast,这里再总结一下:

        Toast.makeText(this, “text”,Toast.SHORT).show()

        show别忘了。

        好吧,今天就这样。

         �=y9�Θ�C

在android中怎样给整个页面设置监听事件

       您可以类似这样,先实例化子页面中的源码Button控件,然后将实例化后的源码源码 工控流程控件绑定监听事件View view=LayoutInflater.from(context).inflate(R.layout.abc_action_bar_view_list_nav_layout,null); Button button= (Button) view.findViewById(R.id.action_bar); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //写上点击后要执行的事件 } });当然了,您要在不同页面实现不同的源码功能的话,您可以将以上代码写在viewPager.setOnPageChangeListener的源码卓越时时彩源码滚动回调方法当中进行页面滚动的判断,从而执行不同的源码ngbook2 源码点击事件。希望能帮到您,源码如果还有什么问题,源码欢迎您继续追问。源码谢谢。源码

源码