控件的监听事件。

来源:互联网 发布:flash cs5 mac中文版 编辑:程序博客网 时间:2024/06/01 12:21

标题就说了,这次说一说控件的监听,这个监听是指你对控件的操作,监听分很多,一把来说是监听点击事件或者监听它的触摸事件。

首先都说了是对控件的操作吧,要指明是哪个控件吧,

点击事件呢分为4类,匿名内部类,自定义类,当前类,XML;

public class DayTwoClick extends AppCompatActivity implements View.OnClickListener {
    Button  one_bt,two_bt,three_bt;//声明
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_daytwoclick);//页面的设置
//初始化Button
        one_bt= (Button) findViewById(R.id.click_onel);
        two_bt= (Button) findViewById(R.id.click_two);
        three_bt= (Button) findViewById(R.id.click_three);


//匿名内部类点击事件
        one_bt.setOnClickListener(new View.OnClickListener()//View包下的 {
            @Override
            public void onClick(View v) {//重写的方法
                Toast.makeText(DayTwoClick.this,"这是匿名内部类",Toast.LENGTH_SHORT).show();//吐司显示
            }
        });


//自定义类点击事件
        MyClick myClick=new MyClick();
        two_bt.setOnClickListener(myClick);
class MyClick implements View.OnClickListener{//首先自定义一个类,实现接口,复写方法

        @Override
        public void onClick(View v) {
            Toast.makeText(DayTwoClick.this,"这是自定义类点击事件",Toast.LENGTH_SHORT).show();
        }
    }
}


 // 当前类点击事件,注意必须实现OnClickListener这个接口
        three_bt.setOnClickListener(this);//设置监听,当操作btn
         one_bt.setOnClickListener(this);
          two_bt.setOnClickListener(this);
        
 @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.click_three: //用地址,则可表示当前类
                Toast.makeText(this,"这是当前类作为对象点击事件three",Toast.LENGTH_SHORT).show();
                break;
          case R.id.click_one:
               Toast.makeText(this,"这是当前类作为对象点击事件one",Toast.LENGTH_SHORT).show();
               break;
          case R.id.click_two:
          Toast.makeText(this,"这是当前类作为对象点击事件two",Toast.LENGTH_SHORT).show();
        }
    }


0 0