在做项目时,我们可能会遇到当输入框的内容变化后让光标自动显示在下一个输入框,这样就省去了手工的点击,从而提高了效率。

requestFocus() 获取焦点  即光标的显示

setOnFocusChangeListener  监听EditText焦点变化   当获取焦点后hasFocus 为true

具体演示的代码:

xml布局:

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

>

android:id="@+id/et_name"

android:layout_width="match_parent"

android:layout_height="40dp"

android:hint="请输入姓名:" />

android:id="@+id/et_pass"

android:layout_width="match_parent"

android:layout_height="40dp"

android:hint="请输入密码:" />

android:id="@+id/btn_request"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="密码框获取焦点"

/>

android:id="@+id/btn_lose"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="密码框失去焦点"

/>

java代码:

package com.example.android_edittext;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.View.OnFocusChangeListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

public class MainActivity extends Activity {

private EditText mEtName,mEtPass;

private Button btnRequest,btnLose;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

initView();

initEvents();

}

private void initEvents() {

btnRequest.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

mEtName.setText("zm");

mEtPass.requestFocus();

}

});

btnLose.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

mEtPass.setText("LP");

mEtName.requestFocus();

}

});

mEtPass.setOnFocusChangeListener(new OnFocusChangeListener() {

@Override

public void onFocusChange(View v, boolean hasFocus) {

if(hasFocus){//获取焦点

Toast.makeText(MainActivity.this, "密码框获取到焦点了", Toast.LENGTH_SHORT).show();

}else{//失去焦点

Toast.makeText(MainActivity.this, "密码框失去焦点了", Toast.LENGTH_SHORT).show();

}

}

});

}

private void initView() {

mEtName=(EditText) findViewById(R.id.et_name);

mEtPass=(EditText) findViewById(R.id.et_pass);

btnRequest=(Button) findViewById(R.id.btn_request);

btnLose=(Button) findViewById(R.id.btn_lose);

}

}

android监听输入框光标,EditText光标的移动相关推荐

  1. Android监听系统输入法键盘弹出显示与隐藏事件

    Android监听系统输入法键盘弹出显示与隐藏事件 有时候需要监听Android系统输入法的弹出显示事件,比如:微信聊天时,不管你当前在聊天中的什么位置(上滑查看消息历史),每当你点击输入框时,都会自 ...

  2. Android 监听 WiFi 开关状态

    Android 监听 WiFi 开关状态 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/70854309 本文出自[赵彦军的博客] ...

  3. android 监听手机电量变化

    今天,简单讲讲如何监听手机电量的变化. 监听电量是不能静态注册的. 后来上网搜索,发现有五个不能静态注册的广播,这里记录一下,免得下次再后知后觉的发现并惊讶于自己的笨拙. 不能静态注册的广播: and ...

  4. android 监听手机开机

    今天,简单讲讲  android 监听手机开机. 需求描述:有些时候,我们需要我们的程序在开机后能自动运行,在系统即将关闭时,能写入一些记录到指定的文件里. 一.开机广播监听: Android系统 ...

  5. android 监听屏幕是否锁屏

    今天,简单讲讲如何监听手机屏幕是否锁屏. 实现方法:1)通过BroadcastReceiver接收广播Intent.ACTION_SCREEN_ON和Intent.ACTION_SCREEN_OFF可 ...

  6. android 监听网络状态

    今天,讲讲怎么监听手机网络状态的改变. 一.加入网络权限 获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:nam ...

  7. 实时监听输入框值变化的完美方案:oninput onpropertychange

    实时监听输入框值变化的完美方案:oninput & onpropertychange 原文:实时监听输入框值变化的完美方案:oninput & onpropertychange 在 W ...

  8. jquery实时监听输入框值变化

    在做web开发时候很多时候都需要即时监听输入框值的变化,以便作出即时动作去引导浏览者增强网站的用户体验感.而采用onchange时间又往往是在输入框失去焦点(onblur)时候触发,有时候并不能满足条 ...

  9. android 应用监听home键,Android 监听Home键

    搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. private final BroadcastReceiver homeRece ...

最新文章

  1. 国内最优秀的Leangoo敏捷项目协作工具
  2. B. Om Nom and Dark Park
  3. win7电脑恢复系统设置或计算机点不了,Win7系统电脑开机就提示需要启动修复的解决方法...
  4. 领域驱动设计,让程序员心中有码(八)
  5. JDK 12:实际中的切换语句/表达式
  6. linux如何给vm权限,linux – 如何创建一个每个用户的vm被隔离的环境
  7. nodejs+supertest+mocha 接口测试环境搭建
  8. java 使用 new Date() 和 System.currentTimeMillis() 获取当前 时间戳
  9. 搭建github服务器_搭建一个属于自己的公网博客
  10. 站长工具箱浏览器插件-SEO分析效率工具插件
  11. 《消息队列》函数讲解
  12. Fence Repair (二叉树求解)(优先队列,先取出小的)
  13. 页面中部分标签简单描述
  14. 数据库实战案例—————记一次TempDB暴增的问题排查
  15. PHP每天自动更新静态文件下载地址,防盗链
  16. 智能小家居——智能插座TOP10方案合集
  17. oracle面试上机题,Oracle面试题附带答案
  18. 苹果测试应用可一键生成ios测试UDID证书,IOS怎么安装APP?怎么测试APP?一键搞定
  19. 我的项目经验v3.0
  20. 智能家居助手(一)-项目概述

热门文章

  1. Python字节码介绍
  2. ?:在正则表达式中什么意思
  3. GPU指令集技术分析
  4. PyTorch 进行 Neural-Transfer
  5. 智能物联网(AIoT,2020年)(下)
  6. SLAM的通用框架:GSLAM
  7. 2021年大数据Hadoop(二十九):​​​​​​​关于YARN常用参数设置
  8. xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b‘b\x14#e\xbc\
  9. Android runOnUiThread() 方法的使用
  10. android studio 的中文网站