前备知识:
1.了解"Android-学习笔记(一) 各文件/文件夹分析"里的内容。
2.需要了解怎么得到界面元素。
那么如何得到界面元素呢?比方一个id为submit的Button定义如下:
[xml]
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/bmi_btn"
/>
[/xml]
那么得到该Button的做法就是findViewById(R.id.submit);
比如:
[java]
Button btnsubmit = (Button)findViewById(R.id.submit);
[/java]
btnsubmit就是那个id为submit的Button了。
好了,下边开始今天的主题。今天讲的主要是OnClickListener,该类位置:import android.view.View.OnClickListener;
那么如何给刚才那个Button添加click事件呢?代码如下:
[java]
btnsubmit.setOnClickListener(callFunc);
[/java]
这里的callFunc是一个OnClickListener对象:
[java]
private OnClickListener callFunc= new OnClickListener() {
public void onClick(View v) {
//Do something
}
}
[/java]
这是比较罗嗦,或者说是比较婆妈的做法,实际使用中我们可以简写为:
[java]
findViewById(R.id.submit).setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//Do something
}
})
[/java]
不过不推荐直接用findViewById(R.id.submit),不规范呀么不规范~
还有一种则是把全部的click事件给一个clickHandler来处理:
[java]
private OnClickListener clickHandler= new OnClickListener() {
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1: // Do something when click button1
break;
case R.id.button2: // Do something when click button2
break;
}
}
}
findViewById(R.id.button1).setOnClickListener(clickHandler);
findViewById(R.id.button2).setOnClickListener(clickHandler);
[/java]
这个白豆腐在Flash中的比较多哈。
Android SDK 2.0之后的版本提供了更简洁的方法,在Activity里创建一个public方法(记得设置View参数),然后在 Layout方法里直接设置。
逻辑和设计相比上边的简写和findViewById方法都更简单明了,更具可读性,也方便以后维护。
[java]
//Activity文件
public void clickHandler(View v) {
// Do something
}
[/java]
[xml]
//main.xml
[/xml]
分享到:
相关推荐
在黑马66期Android学习笔记中,这部分内容详细讲解了如何处理按钮点击事件,以实现更加丰富的用户体验。下面,我们将深入探讨这一主题。 首先,我们从布局文件(XML)开始。在Android应用的界面设计中,按钮通常...
### Android开发学习笔记 #### Button按钮的实现与交互 在Android开发中,`Button`控件是最常用的用户界面元素之一,用于触发特定的操作或事件。本文档将详细讲解如何创建并自定义一个简单的按钮,并设置点击事件...
这篇学习笔记将引导新手入门,通过创建第一个简单的案例来了解Android Studio的基本操作。 首先,让我们了解一下Android Studio的核心功能。它基于IntelliJ IDEA,具备代码自动补全、重构、调试等强大的开发特性。...
### Android学习笔记——从HelloWorld开始 #### 一、Google的Android SDK介绍 自从Google发布了Android SDK以来,这款开源移动操作系统迅速吸引了众多开发者的关注。Android SDK为开发者提供了丰富的工具和API,...
### Android学习笔记知识点详解 #### 一、简介与背景 Android作为全球最受欢迎的移动操作系统之一,自2007年谷歌发布以来,迅速占领市场并持续引领移动技术的发展。随着移动互联网的兴起和发展,Android应用开发...
这篇学习笔记主要涵盖了关于布局的一些基本概念,特别是`fill_parent`和`wrap_content`这两种尺寸指定方式,以及如何通过XML布局文件来精确控制组件的位置。 首先,`fill_parent`和`wrap_content`是Android布局中的...
### Android学习笔记:Chronometer(计时器)的使用 #### 一、Chronometer简介 在Android开发过程中,经常会遇到需要计时的情况,比如游戏应用中的倒计时、运动类应用中的跑步计时等场景。这时候,`Chronometer`...
总结来说,通过学习和分析Android--NoteBook,我们可以深入了解Android应用开发的各个方面,包括UI设计、数据存储、事件处理、生命周期管理以及兼容性策略等。这对于想要提升Android开发技能的人来说是一个很好的...
《李兴华Android开发实战经典》是一门深入探讨Android应用开发的课程,由知名讲师李兴华老师主讲。这门课程旨在帮助学员全面掌握Android应用的...通过系统的学习和实践,你将能够独立开发出高质量的Android应用程序。
在Android开发领域,Android Studio是谷歌官方推荐的集成开发环境(IDE),用于构建Android应用程序。...同时,不断学习和实践Android的最新API和技术,将有助于你构建出更加优秀、用户体验良好的应用。
【Android 学习笔记(1)--永远不变的Hello World】 Android 开发是移动应用开发领域的重要组成部分,尤其对于新手而言,"Hello, World!" 是入门的起点。在这个学习笔记中,我们将探讨如何创建第一个简单的 Android...
### Android入门学习笔记知识点解析 #### 一、HelloWorld与Android SDK - **HelloWorld的重要性**:在软件开发领域,HelloWorld程序被视为一种仪式性的入门程序,用来验证环境配置是否正确,同时也帮助开发者熟悉...
【Android 入门学习笔记】 Android 是一种广泛使用的开源操作系统,尤其在移动设备如智能手机和平板电脑上。本文旨在帮助初学者理解 Android 开发的基本概念和步骤,通过环境搭建、案例讲解来逐步深入。 首先,...
从给定的文件信息来看,这些内容主要是Android开发的学习笔记,涵盖了从基础控件的添加、布局的设置、样式主题的调整到Activity生命周期的管理等多方面的知识点。以下是对文件内容的具体分析: 1. 添加TextView控件...
本篇“Android学习笔记-- Notifying the User”将深入探讨如何有效地利用通知功能来提升用户体验。 首先,我们要理解Android的通知层次结构。在Android系统中,通知是通过`Notification`类来创建的。这个类包含各种...
Android开发是全球最受欢迎的移动应用开发平台之一,广泛应用于智能手机、平板电脑以及各种智能设备上。这份"Android开发教程笔记完全版"涵盖了Android开发的基础到高级主题,旨在帮助开发者全面理解并掌握Android...