zoukankan      html  css  js  c++  java
  • 简单运用 activity 的 button 点击事件

    今天我们要讲的主要是四大组件之一Activity

     

    Activity 在英文中是活动的意思。活动就是我们与用户进行交互的一个场所。

    activity 整个的活动流程是什么呢?我们用一个图来看下

     这里写图片描述

    当然今天主要讲的还是 activity 页面中 Button 按钮的一个点击事件。在 java 中 点击事件弹出消息直接在 js 中 写 alter 即可。

    但是在 Android 中没那么简单。当然也不是很复杂。昨天我们学习了 java 的内部类。在 Android 点击事件中,我们主要使用的是 匿名内部类( anonymous inner class)

    我们直接上栗子好描述些。

     

     

    当然,完成上面步骤的时候,你运行整个项目时,你怎么点击button 都是没有效果的。因为我们没有写点击事件。

    接下来我们要用两种方法写Android 中的点击事件。

    方法一:

    直接在MainActivity 中写匿名内部类实现点击事件,但通常不建议使用,代码的健壮性不高。

    package com.example.hello;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        private Button btn1;
    
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            // setContentView(R.layout.activity_main);
            this.setContentView(R.layout.text);
            btn1 = (Button) findViewById(R.id.button1);
            btn1.setText("点我试试");
            // 不用定义实现类的,用匿名内部类实现 OnClickListener 接口
            btn1.setOnClickListener(new OnClickListener() {
    
                public void onClick(View v) {
                    // context 指的是 activity
                    // text 要弹出的内容
                    // duration 时间
                    Toast t = Toast.makeText(MainActivity.this,
                            "点我也没用,什么也没有...傻眼了吧 !", Toast.LENGTH_LONG);
                    t.show();
                }
            });
    
        }
    
    }

    运行结果如下,当点击按钮的时候,弹出“点我也没用,什么也没有...傻眼了吧 !”

     

    (  这张手机截屏图片为什么怎么大/(ㄒoㄒ)/~~    不管了    将就着看吧 )

    方法二:

    创建一个实现类,去实现点击事件

    package com.example.hello;
    
    import android.content.Context;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Toast;
    
    public class Btn1ClickListener implements OnClickListener {
    
        private Context context;
    
        public Btn1ClickListener(Context c) {
            this.context = c;
        }
    
        public void onClick(View v) {
            Toast t = Toast.makeText(context, "还是什么都没有啊!你骗我╭(╯^╰)╮",
                    Toast.LENGTH_LONG);
            t.show(); // show() 显示
        }
    
    }
    package com.example.hello;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.Button;
    
    public class MainActivity extends Activity {
    
        private Button btn1;
    
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            // setContentView(R.layout.activity_main);
            this.setContentView(R.layout.text);
            btn1 = (Button) findViewById(R.id.button1);
            btn1.setText("点我试试");
    
            btn1.setOnClickListener(new Btn1ClickListener(this));
    
        }
    
    }

     运行结果如下

    以上是今天的学习的全部内容。╮(╯_╰)╭   

  • 相关阅读:
    文件和目录之文件访问权限
    文件和目录之设置用户ID和设置组ID
    文件和目录之文件类型
    文件和目录之stat、fstat和lstat函数
    实用编程技术之多个头文件中变量的重复定义
    带缓冲I/O和不带缓冲I/O的区别与联系
    如何使用nodejs发邮件
    cosmic_download-AsyncPool待修正
    python性能分析之line_profiler模块
    python性能分析之cProfile模块
  • 原文地址:https://www.cnblogs.com/Seven-cjy/p/6075061.html
Copyright © 2011-2022 走看看