zoukankan      html  css  js  c++  java
  • 安卓设置按钮监听的四种方式

    这里的布局文件就很简单。只是一个简单的按钮。ID为button1。

    第一种:

    1.找到按钮的Id.

    Button button= (Button) findViewById(R.id.button1);
    button.setOnClickListener(this);
    但this指的是当前的activity,会报错。ALT+enter键实现View.OnClickListener接口。会自动实现click方法。源码如下:
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.clicklayout);
    Button button= (Button) findViewById(R.id.button1);
    button.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
    Toast.makeText(MainActivity.this,"@@@@@@@@@",Toast.LENGTH_LONG).show();
    }
    }
    第二种:
    同样需要找到按钮的Id
    Button button= (Button) findViewById(R.id.button1);
    利用button设置监听,并实现onclick方法。
    public class MainActivity extends AppCompatActivity  {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.clicklayout);
    Button button= (Button) findViewById(R.id.button1);
    button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Toast.makeText(MainActivity.this,"@@@@@@@@@",Toast.LENGTH_LONG).show();
    }
    });
    }
    }
    第三种:
    这种方法要通过布局文件来实现。在<Button 内容/>中添加android:onclick="click123"。click123可任意设定,是要实现的方法名。
    然后在Mainactivity中实现click123方法。
    public class MainActivity extends AppCompatActivity  {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.clicklayout);
    }
    public void click123(View v){
    Toast.makeText(MainActivity.this,"@@@@@@@@@",Toast.LENGTH_LONG).show();
    }
    }
    第四种:
    以内部类的方式来实现。
    public class MainActivity extends AppCompatActivity  {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.clicklayout);
    Button button= (Button) findViewById(R.id.button1);
    button.setOnClickListener(new myclick());
    }
    class myclick implements View.OnClickListener{

    @Override
    public void onClick(View v) {
    Toast.makeText(MainActivity.this,"@@@@@@@@@",Toast.LENGTH_LONG).show();
    }
    }
    }
     
     
     
     
     
    
    
     

     

  • 相关阅读:
    【SSM 8】spring集成Mybatis通用Mapper
    【SSM 7】Mybatis底层封装思路
    【SSM 7】Mybatis底层封装思路
    【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
    【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
    【SSM 5】Mybatis分页插件的使用
    【SSM 5】Mybatis分页插件的使用
    (2018干货系列十)最新android开发学习路线整合
    (2018干货系列九)最新软件测试学习路线整合
    (2018干货系列八)最新VR学习路线整合
  • 原文地址:https://www.cnblogs.com/xiao-zhang/p/7502336.html
Copyright © 2011-2022 走看看