android学习笔记(3)Button控件的学习
一,增加一个button并用外部类绑定事件
//XML文件:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="扣子1" />
//主类:
public class MainActivity extends Activity { private Button btn1 = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button)findViewById(R.id.button1);
btn1.setOnClickListener(new buttonclick()); //方法一,定义外部类来绑定事件 class buttonclick implements OnClickListener {
public void onClick(View arg0) {
System.out.printline("点击了button1");
}
}
二,用内部类绑定事件
<span style="color: rgb(51, 51, 51);">btn1.setOnClickListener(new OnClickListener() { //方法二,定义</span><span style="color:#ff0000;"><strong>内部类</strong></span><span style="color: rgb(51, 51, 51);">来绑定事件 @Override
public void onClick(View arg0) {
//用Toast来显示提示
</span><span style="color:#ff0000;"><strong>//注意:Toast.makeText(Context context, CharSequence text, int duration)</strong></span><span style="color: rgb(51, 51, 51);">
</span><span style="color:#ff0000;"><strong>//context要指向主类自己,这个要弄明确!!!!,text设置文本,duration设置时间</strong></span><span style="color:#333333;">
Toast.makeText(getApplicationContext(), "click!", Toast.LENGTH_LONG).show(); }
});</span>
三,有多个button,将内部类设置成变量使代码更友好
xml文件就不多说了,
<span style="color:#333333;">private Button btn1 = null;
private Button btn2 = null;
btn1 = (Button)findViewById(R.id.button1);
btn2 = (Button)findViewById(R.id.button2);
btn1.setOnClickListener(listener); //有多个button
btn2.setOnClickListener(listener); private OnClickListener listener =new OnClickListener() { //定义一个变量来装这个内部类 @Override
public void onClick(View v) {
</span><span style="color:#ff0000;"><strong>//注意View是什么,然后以下为什么要强制转换成button!!</strong></span><span style="color:#333333;">
Button btn = (Button)v;
switch (btn.getId()) {
case R.id.button1:
Toast.makeText(getApplicationContext(), "click1!", Toast.LENGTH_LONG).show();
break; case R.id.button2:
Toast.makeText(getApplicationContext(), "click2!", Toast.LENGTH_LONG).show();
break;
} }
};</span>
android学习笔记(3)Button控件的学习的更多相关文章
- WPF-学习笔记 动态修改控件Margin的值
原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...
- Android UI 统一修改Button控件的样式,以及其它系统控件的默认样式
先介绍下修改原理:首先打开位于android.widget包下面的Button.java文件,这里有一句关键的代码如下: public Button(Context context, Attribut ...
- 学习笔记:UpdatePanel控件
Asp.net UpdatePanel 允许用户构建一个丰富的,以客户端为中心的应用程序,引用UpdatePanel控件,能够实现页面的部分刷新,一个包含scriptManage和 UpdatePan ...
- Android学习笔记_30_常用控件使用
一.状态栏通知(Notification): 如果需要查看消息,可以拖动状态栏到屏幕下方即可查看消息.发送消息的代码如下: public void sendNotice(View v){ int ic ...
- Android开发学习笔记-自定义组合控件的过程
自定义组合控件的过程 1.自定义一个View 一般来说,继承相对布局,或者线性布局 ViewGroup:2.实现父类的构造方法.一般来说,需要在构造方法里初始化自定义的布局文件:3.根据一些需要或者需 ...
- Android开发学习笔记-自定义组合控件
为了能让代码能够更多的复用,故使用组合控件.下面是我正在写的项目中用到的方法. 1.先写要组合的一些需要的控件,将其封装到一个布局xml布局文件中. <?xml version="1. ...
- android 学习笔记四:控件
1.android:gravity 指定控件的基本位置,比如居中.居右等位置 Top:顶部 bottom:底部 left:居左 right:居右 center_vertical:垂直居中 center ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.9.Progressbar控件
Progressbar控件用来显示任意进程的完成百分比. 默认安装启用 配置选项 控件暴露的事件API progressbar暴露的独一无二的方法 一些现实生活的例子 当前版本中,我们或系统必须明确进 ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.8.Datepicker控件
默认datepicker的安装启用 探索它的配置选项 安装启用一个触发按钮 配置一个供选择的动画 dateFormat选项 简单的国际化 多月datepicker 日期范围选择 datepicker的 ...
随机推荐
- 洛谷——P1170 兔八哥与猎人
P1170 兔八哥与猎人 题目描述 兔八哥躲藏在树林旁边的果园里.果园有M × N棵树,组成一个M行N列的矩阵,水平或垂直相邻的两棵树的距离为1.兔八哥在一棵果树下. 猎人背着猎枪走进了果园,他爬上一 ...
- Bluetooth篇 开发实例之七 匹配&UUID
匹配和通信是两回事. 1.用过Android系统设置(Setting)的人都知道蓝牙搜索之后可以建立配对和解除配对,但是这两项功能的函数没有在SDK中给出.但是可以通过反射来获取. 知道这两个API的 ...
- 从内存溢出看Java 环境中的内存结构
作为有个java程序员,我想大家对下面出现的这几个场景并不陌生,倍感亲切,深恶痛绝,抓心挠肝,一定会回过头来问为什么为什么为什么会这样,嘿嘿,让我们看一下我们日常在开发过程中接触内存溢出的异常: Ex ...
- JS 随机数字抽签
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...
- A标签几种状况下的样式问题
正常状态下的a标签是这样的. 去掉下划线只需要在样式里面加入a{text-decoration:none;}或者<a href="www.kanbuchuan.com"sty ...
- react热加载失败
react热加载失败 原因:路径名字大小写错误, 不是全部加载失败,有的时候可以用,有的时候不可以 热加载插件:webpack-dev-server
- linux内存查看方法
cat /proc/meminfo 查看RAM使用情况,最简单的方法是通过/proc/meminfo.这个动态更新的虚拟文件实际上是许多其他内存相关工具(如:free / ps / top)等的组合显 ...
- EasyUI Tree 动态传递参数
1.问题背景 一般出现在加载的时候,传递参数给后台,进行数据筛选,然后在加载tree渲染数据.所谓动态参数,可以是你的上一级节点node,或者是根节点node. 2.涉及方法 onBeforeLoad ...
- python学习心得
一,高级特性: 1,切片:[start:stop:step] >>>l=range() >>>l[,-,] resulte is [] 2,迭代 2.1按iterv ...
- 时间操作(JavaScript版)—最简单比較两个时间格式数据的大小
呵呵呵,在软件研发过程中假设遇到要比較两个时间的大小.你会怎么做.嗯嗯嗯,非常直观的做法就是把"-"去掉,再比較大小,真的有必要吗?看以下最简单的时间比較方式: <!DOCT ...