package com.geli_2.sujie.sujiegeili2testbutton;

 import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.Toast; public class MainActivity extends AppCompatActivity implements View.OnClickListener
{ private Button mBtClick;
private Button mBtClick2;
private Button mBtClick3;
private Button mBtClick4; @Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtClick = (Button) findViewById(R.id.btnTest1); //1、fdv 找到button id
// 2、 Alt Ctrl F 形成类全局Field
mBtClick.setOnClickListener(new View.OnClickListener() //3、键入此行代码自动嵌入内部类方法
{
@Override
public void onClick(View v)
{ //4、 Toast tab tab 调出toast 方法 以上为方法一
Toast.makeText(MainActivity.this, "hello world1", Toast.LENGTH_SHORT).show();
}
}); mBtClick2 = (Button) findViewById(R.id.btnSample2); //5、找出button 2 的 button id fdv
mBtClick2.setOnClickListener(new Button_2_OnClickListener()); //9、实例化方法给button 绑定 以上是方法二
mBtClick3 = (Button) findViewById(R.id.btnTry3); //10、找出button 3 的 button id fdv
mBtClick3.setOnClickListener(this); //11、 this 表示 main acitivity
//12 但是这里是方法参数是onclicklistener接口,此处 this Alt Enter 会在此方法上加上实现的接口以上是方法三
mBtClick4 = (Button) findViewById(R.id.btnExample4); //5、找出button 4 的 button id fdv 方法四这行没用 } /**
* Called when a view has been clicked.
*
* @param v The view that was clicked.
*/
@Override
public void onClick(View v)
{
Toast.makeText(MainActivity.this, "hello world 3", Toast.LENGTH_SHORT).show();//方法三
} class Button_2_OnClickListener implements View.OnClickListener //6、设置一个 click 方法 命名后继承自 view
// onclicklistener
//7、 后在 继承 implements 上 alt + enter 来实现方法
{ /**
* Called when a view has been clicked.
*
* @param v The view that was clicked.
*/
@Override
public void onClick(View v)
{
Toast.makeText(MainActivity.this, "hello world 2", Toast.LENGTH_SHORT).show();//方法二
}
}
public void click(View view)
{
Toast.makeText(MainActivity.this, "hello world 4", Toast.LENGTH_SHORT).show();//方法四
} }

Android studio button 按钮 四种绑定事件的方法的更多相关文章

  1. jquery 绑定事件的方法

    jQuery中提供了四种绑定事件的方法,分别是bind.live.delegate.on,对应的解除监听的函数分别是unbind.die.undelegate.off: 一.on()方法(首选方法) ...

  2. JavaScript三种绑定事件的方式

    JavaScript三种绑定事件的方式: 1. <div id="btn" onclick="clickone()"></div> // ...

  3. Android中Button的五种监听事件

    简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activ ...

  4. JavaScript绑定事件的方法[3种]

    在JavaScript中,有三种常用的绑定事件的方法: 在DOM元素中直接绑定: 在JavaScript代码中绑定: 绑定事件监听函数. 一. 在DOM元素中直接绑定 这里的DOM元素,可以理解为HT ...

  5. Android Studio系列教程四--Gradle基础

    Android Studio系列教程四--Gradle基础 2014 年 12 月 18 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang ...

  6. android数据存取的四种方式

    Android系统下有四种数据的存在形式,分别是SQLite,SharePreference,File,ContentProvider.一:特性介绍:SQLite:对于大多数开发者而言,这应该是大家非 ...

  7. Jquery中bind(), live(), on(), delegate()四种注册事件的优缺点,建议使用on()

    jquery中注册的事件,注册事件很容易理解偏差,叫法不一样.我第一反应就是如何添加事件,使用onclick之类的,暂时不讨论js注册事件的方法. 也看到园内前辈写过相关的帖子,但不是很详细,我找到了 ...

  8. Android studio 使用心得(四)—android studio 多渠道打包(二)

    Android studio 使用心得(四)—android studio 多渠道打包 这篇文章讲了一种打包方式.是直接在android studio 里面可视化操作,结合配置文件.我个人觉得严格上来 ...

  9. Android学习笔记_3_四种布局

    Android布局是应用界面开发的重要一环,在Android中,共有四种布局方式, 分别是:FrameLayout( 帧布局 ).LinearLayout (线性布局).TableLayout(表格布 ...

随机推荐

  1. CentOS7.x编译安装nginx,实现HTTP2

    网站使用HTTP2有助于网站加速及更安全,要配置HTTP2必须满足两个条件:①openssl的版本必须在1.0.2e及以上.②nginx的版本必须在1.9.5以上 一.准备工作  配置HTTP2之前需 ...

  2. 基于vue的web应用如何构建成手机端的原生安装包

    话不多说,点击前往

  3. Java内存模型(JSR133)问与答

    What is a memory model, anyway? In multiprocessor systems, processors generally have one or more lay ...

  4. 工具-CocoaPods安装和使用及卸载

    CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods. 我们在使用gem更新的时候,经常会为速度抓狂,其实gem默认的源是https://rubygem ...

  5. Vue笔记:webpack项目vue启动流程

    VUE启动流程 1. package.json 在执行npm run dev的时候,会在当前目录中寻找 package.json 文件, 有点类似 Maven 的 pom.xml 文件,包含项目的名称 ...

  6. CentOS6.5 QT5.3 找不到GLIBCXX3.4.15解决方法

    下载安装后 启动的时候提示 GLIBCXX_3.4.15,发现libstdc++.so.6的版本过, 在安装qt-creator的时候运行这个IDE就出现了这个问题,是由于libstdc++.so.6 ...

  7. k8s一点

    1.kubectl get secret -n kube-system|grep admin-token kubernetes-dashboard-admin-token-9q757  2.kubec ...

  8. Netty 高性能之道 FastThreadLocal 源码分析(快且安全)

    前言 Netty 作为高性能框架,对 JDK 中的很多类都进行了封装了和优化,例如 Thread 类,Netty 使用了 FastThreadLocalRunnable 对所有 DefaultThre ...

  9. 分布式理论(八)—— Consistent Hash(一致性哈希算法)

    前言 在分布式系统中,常常需要使用缓存,而且通常是集群,访问缓存和添加缓存都需要一个 hash 算法来寻找到合适的 Cache 节点.但,通常不是用取余hash,而是使用我们今天的主角-- 一致性 h ...

  10. NavicatForOracle无法连接数据库,报错ORA-28547

    因为换了新项目,要用到oracle数据库,但是用Navicat连接oracle不像连接MySql那样简单,连接的时候总是报ORA-28547,最后搜了一下解决方案发现是install client没有 ...