java源码如下:

1、MainActivity.java源码

 package com.example.responsetest;
import android.app.Activity;
import android.content.Intent;
import android.content.Loader.ForceLoadContentObserver;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView; //方法六:通用场景,特别是某个控件的点击方法需要实现的逻辑较为复杂的时候
public class MainActivity extends Activity{
TextView textview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview=(TextView)findViewById(R.id.textview);//1.初始化值
}
public void onTextViewClick(View view) { //2.传入形参
//跳转页面
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent); //textview.setTextColor(Color.GREEN);//点击变色
}
} /*
//方法五:适用于不同类型的控件,使需要实现的功能在一个onClick()方法中实现
public class MainActivity extends Activity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button1=(Button)findViewById(R.id.button1);
Button button2=(Button)findViewById(R.id.button2);
ImageButton button3=(ImageButton)findViewById(R.id.imagebutton);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
} @Override
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.button1:
case R.id.button2:
case R.id.imagebutton:
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
break;
default:
break;
}
}
}
*/ /*
//方法四:与方法三差别不大:
public class MainActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button1=(Button)findViewById(R.id.button1);
Button button2=(Button)findViewById(R.id.button2);
button1.setOnClickListener(new MyOnClick());
button2.setOnClickListener(new MyOnClick());
}
private class MyOnClick implements OnClickListener{
@Override
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.button1:
case R.id.button2:
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
break;
default:
break;
}
}
}
}
*/
/*
//方法三:适用于多个同类型的控件(比如Button)等
public class MainActivity extends Activity{
Button[] buttons;//定义一个Button数组,封装多个同类型的Button控件(成员变量有默认的初始值)
//初始化函数
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttons=new Button[]{(Button)findViewById(R.id.button1),(Button)findViewById(R.id.button2)};
for(Button button:buttons) {
button.setOnClickListener(listener);
}}
//成员变量:
private OnClickListener listener=new OnClickListener() {
@Override
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.button1:
case R.id.button2:
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
break;
default:
break;
}}};
}
*/ /* public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button=(Button)findViewById(R.id.button2);
button.setOnClickListener(new MyOnclickListener());
}
//事件响应方法二:定义内部类实现监听接口
public class MyOnclickListener implements OnClickListener{
@Override
public void onClick(View arg0) {
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
}
}
} */
/*
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //事件响应方法一:使用匿名内部类,适用于任何场景
findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
}
});;
}
}
*/

2、SecondActivity.java源码

 package com.example.responsetest;

 import android.app.Activity;
import android.os.Bundle; public class SecondActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
}

xml代码如下:

1、activity_main.xml代码(第一界面):

1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 xmlns:tools="http://schemas.android.com/tools"
3 android:id="@+id/main_activity"
4 android:layout_width="match_parent"
5 android:layout_height="match_parent"
6 android:orientation="vertical"
7 android:paddingBottom="@dimen/activity_vertical_margin"
8 android:paddingLeft="@dimen/activity_horizontal_margin"
9 android:paddingRight="@dimen/activity_horizontal_margin"
10 android:paddingTop="@dimen/activity_vertical_margin"
11 tools:context="com.example.responsetest.MainActivity" >
12
13 <Button
14 android:id="@+id/button1"
15 android:layout_width="match_parent"
16 android:layout_height="wrap_content"
17 android:text="匿名内部类" />
18
19 <Button
20 android:id="@+id/button2"
21 android:layout_width="match_parent"
22 android:layout_height="wrap_content"
23 android:text="内部类"/>
24 <ImageButton
25 android:id="@+id/imagebutton"
26 android:layout_width="100dip"
27 android:layout_height="100dip"
28 android:scaleType="fitCenter"
29 android:src="@drawable/ic_launcher"
30 />
31 <TextView
32 android:id="@+id/textview"
33 android:layout_width="match_parent"
34 android:layout_height="wrap_content"
35 android:onClick="onTextViewClick"
36 android:text="点击事件"
37 android:textSize="50sp"
38 />
39
40 </LinearLayout>

2、activity_second.xml源码(第二界面):

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 xmlns:tools="http://schemas.android.com/tools"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:paddingBottom="@dimen/activity_vertical_margin"
6 android:paddingLeft="@dimen/activity_horizontal_margin"
7 android:paddingRight="@dimen/activity_horizontal_margin"
8 android:paddingTop="@dimen/activity_vertical_margin"
9 tools:context="com.example.responsetest.MainActivity" >
10
11 <TextView
12 android:id="@+id/secondactivity"
13 android:layout_width="match_parent"
14 android:layout_height="wrap_content"
15 android:text="欢迎您" />
16
17 </LinearLayout>

3、AndroidManifest.xml源码:

 1 <?xml version="1.0" encoding="utf-8"?>
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="com.example.responsetest"
4 android:versionCode="1"
5 android:versionName="1.0" >
6
7 <uses-sdk
8 android:minSdkVersion="18"
9 android:targetSdkVersion="22" />
10
11 <application
12 android:allowBackup="true"
13 android:icon="@drawable/ic_launcher"
14 android:label="@string/app_name"
15 android:theme="@style/AppTheme" >
16 <activity
17 android:name=".MainActivity"
18 android:label="@string/app_name" >
19 <intent-filter>
20 <action android:name="android.intent.action.MAIN" />
21
22 <category android:name="android.intent.category.LAUNCHER" />
23 </intent-filter>
24 </activity>
25 <activity
26 android:name="com.example.responsetest.SecondActivity"
27 android:excludeFromRecents="true"
28 android:noHistory="true"/>
29 </application>
30
31 </manifest>

代码分析:

1.两个java类:

  MainActivity.java :主类,代码的主要执行者,操作第一界面

  SecondActivity.java:跳转后的页面,操作第二界面

2.三个xml文件:

activity_main.xml:布局第一个手机界面

activity_second.xml:布局第二个界面(跳转后的界面)

AndroidManifest.xml:Android代码的执行入口

Android学习之六种事件响应方法汇总的更多相关文章

  1. java事件响应方法汇总(容器类监听、监听器类、AbstractAction、反射)

    Java图形用户界面中,处理事件时所必须的步骤是: 1.创建接受响应的组件(控件)2.实现相关事件监听接口3.注册事件源的动作监听器4.事件触发时的事件处理 相应的可以通过以下的集中方式来作出事件响应 ...

  2. android view、viewgroup 事件响应拦截处理机制

    文章中会用到部分网络资源,首先将原作者的链接附上. 但是还是会附上数量较大的关于此部分内容的自己的思考. ----------------------------------------------- ...

  3. Android开发之常见事件响应方式

    常见的事件有   (1)单击事件 onClickListener (2)长按事件 onLongClickListener (3)滑动事件 onTouchListener (4)键盘事件 onKeyLi ...

  4. Android学习之触点事件的处理

    知识点: 1. Android开发中的运动事件:触摸屏(TouchScreen)和滚动球(TrackBall) 2.对运动事件的处理:MotionEvent 3.触摸时必发的三个MotionEvent ...

  5. C#中Form的Paint事件响应方法与重载虚方法OnPaint()的区别

    Form_Paint()方法是Paint事件的响应方法,OnPaint是可重载的虚方法,OnPaint方法是调用Paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的: protec ...

  6. Android开发之Button事件实现方法的总结

    下面介绍Button事件实现的两种方法 main.xml <?xml version="1.0" encoding="utf-8"?> <Li ...

  7. Android学习笔记触摸事件

    案例代码: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <Relativ ...

  8. Android学习笔记--JNI的使用方法

    1.JNI是什么 JNI是Java Native Interface的缩写,它提供若干的API实现Java与其他语言之间的通信.而Android Framework由基于Java语言的的Java层与基 ...

  9. Android学习之键盘事件

    java代码: package com.example.keyboardtest; import android.app.Activity; import android.os.Bundle; imp ...

随机推荐

  1. kafka安装与简单使用

    一.kafka安装 安装是非常简单的,现在推荐安装0.8的版本,这个版本是非常稳定的,而且公司里面也多用此版本. 简单的安装: 这个是我使用的版本,kafka_2.11-0.8.2.2.tgz 直接t ...

  2. 【读书笔记】iOS-UDID

    UIDevice类可以返回当前iOS设备的UDID,以前开发者通常使用UDID作为识别每台设备的唯一标识,然后从iOS5开始,苹果公司将这一功能标记为废止并不推荐使用,苹果公司在iOS6之后将这个功能 ...

  3. CSS expression属性

    expression属性是在IE5版本之后支持使用的,用来把CSS属性和JavaScript脚本关联起来.简单粗暴的说,该属性是用来调用JavaScript代码的. CSS属性后面是一段JavaScr ...

  4. Android之ProgressDialog的使用

    ProgressDialog 继承自AlertDialog,AlertDialog继承自Dialog,实现DialogInterface接口. ProgressDialog的创建方式有两种,一种是ne ...

  5. 聊聊setTimeout和setInterval线程

    在聊setTimeout和setInterval这两个事件的前,先聊另外一个与之密切关联的知识点,那就是线程(thread).而线程有常常跟另外一个词语--“进程”一起出现.那么何为线程?何为线程呢? ...

  6. springcloud 入门 7 (zuul路由网关)

    Zuul简介: Zuul的主要功能是路由转发和过滤器.路由功能是微服务的一部分,比如/api/user转发到到user服务,/api/shop转发到到shop服务.zuul默认和Ribbon结合实现了 ...

  7. 13.1、多进程:进程锁Lock、信号量、事件

    进程锁: 为什么要有进程锁:假如现在有一台打印机,qq要使用打印机,word文档也要使用打印机,如果没有使用进程锁,可能会导致一些问题,比如QQ的任务打印到一半,Word插进来,于是打印出来的结果是各 ...

  8. udev和devfs的区别

    devfs(设备文件系统)是由Linux2.4内核引入的,它的出现主要使得设备驱动程序能够自主管理自己的设备文件.具体来说,devfs具有如下优点: 可以通过程序在设备初始化时在/dev目录下创建设备 ...

  9. Centos 如何关闭自动更新

    法一 安装Centos 6.5后,系统yum自动更新状态默认为开启,若禁止系统自动更新需要手动关闭. 1.进入yum目录 [root@localhost ~]$ cd /etc/yum 2.编辑yum ...

  10. MySQL 1130 - Host 127.0.0.1 is not allowed to connect to this MySQL server

    在开发中为了让开发更方便,在本地配置环境,希望可以直接访问服务器上的MySQL数据库,更方便的管理数据库, 需要在本地远程连接linux服务器的本地数据库,直接用数据库管理工具连接出现如下报错1130 ...