文档章节

Android03_Listener监听

程序袁_绪龙
 程序袁_绪龙
发布于 2014/10/10 22:36
字数 473
阅读 78
收藏 5

在做Android计算器程序时,上网正好找到了这个代码:

EditText Widget的设计是为了等待User输入而准备的,那么在User输入的同时,又该如何拦截所输入的文字呢?Android的多数Widget都有setOnKeyListener事件,以此Listener捕捉User输入的键盘事件。

下面的例子是实现TextView实时显示EditText输入的内容。

运行结果

程序

1、ex04_1/src/com.example.ex04_1/ex04_1.java

主程序中唯一也是关键之处,便是利用EditText.OnKeyListener来拦截EditText的键盘输入事件,仅需要在其中重写onKey()方法,在onKey()方法中,将EditText.getText()取出来的文字,显示于TextView当中。

package com.example.ex04_1;

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class ex04_1 extends Activity {
/*声明 TextView EditText对象*/
private TextView mTextView01;
private EditText mEditText01;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

/*取得TextView EditText*/
mTextView01=(TextView)findViewById(R.id.TextView01);
mEditText01=(EditText)findViewById(R.id.EditText01);

/*设置EditText用OnKeyListene事件来启动*/
mEditText01.setOnKeyListener(new EditText.OnKeyListener()
{
@Override
public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
// TODO Auto-generated method stub
/*设置TextView显示EditText所输入的内容*/
mTextView01.setText(mEditText01.getText());
return false;
}

});
}
}

这个是csdn上的博客,原作者是 christina_hu

由于我初出茅庐所以就只能读懂其中的一点点内容,


mEditText = (EditText) findViewById(R.id.etext);

mTextView = (TextView) findViewById(R.id.txsr);
mEditText.setOnKeyListener(new EditText.OnKeyListener(){


@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
//每次按Enter的时候才会显示;
mTextView.setText(mEditText.getText());
//不知道,这里面的FALSE和TRUE有啥区别,都能显示
//return false;

returntrue;
}

});

其实就是调用一个setOnKeyListener这个函数,以及内部的OnKeyListener这个函数,但是,有个不好的地方,这段代码如果只是用于那种只输入一次的输出框中,还是很好用的,但是如果是用于计算器这样的经常输入的显示框中就不怎么好用了。因为只显示一次了。

© 著作权归作者所有

共有 人打赏支持
程序袁_绪龙
粉丝 101
博文 242
码字总数 66750
作品 0
普陀
程序员
私信 提问
ORACLE--网络管理

1.专有连接 用户连接有专门的进程进行相应 user ----server process 2.共享连接 [] 用户连接数据库时,没有服务进程相应,而将用户的信息放到调度里,而调度放到队列[队列]中 uesr ----dispa...

柳白子
2016/12/09
3
0
Servlet的Listener的使用

当Web应用在Web容器中运行时,Web应用内部会不断地发生各种事件,如Web应用被启动,Web应用被停止,用户的Session开始与结束,用户请求到达等,通常来说,这些Web事件对用户是透明的。实际上...

摆渡者
2014/03/03
0
0
给11gR2 RAC添加LISTENER监听器并静态注册

给11gR2 RAC添加LISTENER监听器并静态注册 2011/12/04 by Maclean Liu 14 Comments 之前有同学想要给11gR2的RAC添加LISTENER监听器,查看了listener.ora并发现问题: [oracle@vrh2 ~]$ lsnrct...

rootliu
2017/10/22
0
0
Oracle 基础篇 --- Oracle Network配置

第二. Oracle Network配置 配置和管理Oracle Network 的工具: * Enterprise Manager 的“Net Services Administration(网络服务管理)”页 1. Oracle Net Manager * 提供一个图形用户界面(...

wangbinbin0326
2015/05/29
0
0
The listener supports no services解决一例

The listener supports no services解决一例 Listener动态监听静态监听注册实例 今天做Advacned Replication实验的时候碰到一个问题,启动目标库监听时,出现The listener supports no serv...

飓风2000
2014/06/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

deepin中配置robot framework环境

本文永久更新地址:https://my.oschina.net/bysu/blog/2989005 【若要到岸,请摇船:开源中国 不最醉不龟归】 1.在终端中输入pip,回车,如果提示没有该命令,则先安转pip sudo apt-get inst...

不最醉不龟归
35分钟前
2
0
OSChina 周日乱弹 —— 钱不还,我就当你人不在了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享Bigleaf的单曲《小鹿》 《小鹿》- Bigleaf 手机党少年们想听歌,请使劲儿戳(这里) 周日在家做什么? 做手工呀, @poorfis...

小小编辑
今天
114
4
EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
20
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
30
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
39
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部