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();
    }
    }
    }
     
     
     
     
     
    
    
     

     

  • 相关阅读:
    ajax 发送请求无法重定向问题
    网页中转跳转的几种方式
    后台返回的HTML整个页面代码打开方法
    Json对象与Json字符串的转化、JSON字符串与Java对象的转换
    SpringMVC ModelAndView跳转失效
    springMVC中前台ajax传json数据后台controller接受对象为null
    $.ajax 中的contentType
    springMVC--请求的跳转和传值
    Windows NT WinLogon Notify
    虚拟机检测技术剖析
  • 原文地址:https://www.cnblogs.com/xiao-zhang/p/7502336.html
Copyright © 2011-2022 走看看