• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android学习——四种绑定监听事件,android监听

Android学习——四种绑定监听事件,android监听

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了Android学习——四种绑定监听事件,android监听等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android学习——四种绑定监听事件,android监听


 欢迎任何形式的转载,但请务必注明出处。

此篇参考:http://blog.csdn.net/a78270528/article/details/46953541

 

XML文件

重点是为两个控件设置id,在java代码中我们可以通过查找id找到对应控件为其设置监听事件

<TextView
        android:id="@+id/textView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Hello Liu!"
        android:textSize="40dp"
        android:textStyle="bold"
        android:layout_marginTop="20dp"
         />

<Button
        android:text="Button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/bt_dial" />

 

一:匿名内部类

该方法比较直观方便编写,但当按钮增加时代码会变得庞大。

public class MainActivity extends AppCompatActivity {
    //通过id查找控件
    private Button bt_dial = (Button)findViewById(R.id.bt_dial);
    private TextView textview = (TextView)findViewById(R.id.textView);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);  //加载布局

        bt_dial.setOnClickListener(new View.OnClickListener(){ //设置监听事件
            @Override
            public void onClick(View view){
                textview.setText("Hello World");  //点击按钮将textview2中的文本改变
            }
        });
    }
}

 

二、自定义单击事件监听类

public class MainActivity extends AppCompatActivity {
    //通过id查找控件
    private Button bt_dial = (Button)findViewById(R.id.bt_dial);
    private TextView textview = (TextView)findViewById(R.id.textView);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);  //加载布局

        bt_dial.setOnClickListener(new btListener());          //触发事件
    }
    private class btListener implements View.OnClickListener{  //自定义监听类,继承OnClickListener
        public void onClick(View view){                        //实现方法
            textview.setText("Hello World");                  //点击按钮改变文本框内容
        }
    }
}

 

三、Activity继承View.OnClickListener

     由Activity实现OnClick(View view)方法,在OnClick(View view)方法中用switch-case对不同id代表的button进行相应的处理

     这种方法是Onclick的最佳使用方法

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    //通过id查找控件
    private Button bt_dial = (Button)findViewById(R.id.bt_dial);
    private TextView textview = (TextView)findViewById(R.id.textView);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);  //加载布局

        bt_dial.setOnClickListener(this);          //触发事件
    }
    public void onClick(View view ) {              //实现方法
        switch(view.getId()){
            case R.id.bt_dial:
                textview.setText("Hello World");
                break;
            default:
                break;
        }
    }
}

 

四、在XML文件中显示指定按钮的onClick属性

       这样点击按钮时会利用反射的方式调用对应Activity中的click()方法:

       这种写法整个代码中都不用声明button就可以实现button的单击事件。



android:onClick="setTexview"

  setTexview是一个方法名,你要在这个布局对应的Activity里面实现这个方法。

    public void setTexview(View view){
        textview.setText("Hello World");
    }

 

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android学习——四种绑定监听事件,android监听

相关文章

  • 2017-05-26计算器Pro应用项目源码,计算器pro源码
  • 2017-05-26认识一下Kotlin语言 Android平台的Swift
  • 2017-05-26nagios二次开发之“依据分组绘制服务图”
  • 2017-05-26Android源码之陌陌源码,android源码
  • 2017-05-26Swift开发iOS应用(1)列表的实现
  • 2017-05-26Android开发技术周报 Issue#68
  • 2017-05-26生日星座自动匹配,生日星座匹配
  • 2017-05-26Android5.0开发范例大全 读书笔记(六),android5.0范例
  • 2017-05-26抽取的BaseFragment和LoadingPage,basefragment
  • 2017-05-26Android学习过程中的一些基础笔记,android笔记

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 二维码Zxing&amp;Zbar,zxing
    • AES 加密算法,对用户的敏感信息加密处理,aes加密算法
    • 【转载】ReactiveX 的理念和特点,转载reactivex理念
    • Android开发必看-快速提高 Android 开发效率的 Web 工具,android必看
    • 单机搭建Android开发环境(二),单机搭建android开发
    • android toolbar 假标题居中,androidtoolbar
    • 安卓学习----使用okHttp(POST方式)---登录,安卓okhttp
    • android:px,dp(dip),sp的区别
    • 热修复-Tinker,修复-tinker
    • Android Studio 2.2.2导入Eclipse中创建的项目,androideclipse

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有