因此,如果用户输入“1234”,他们将在EditText字段中看到“1234”.但是当那个领域失去焦点时,我希望它显示“****”

所以我实现了一个自定义TransformationMethod,如果EditText字段没有焦点,它只会屏蔽输入的文本.

当我输入文本“12345”时,它显示它应该是“12345”但是当我点击不同的字段时,数字永远不会被屏蔽.我想看到“*****”,但我仍然看到相同的“12345”

如果我旋转设备(强制它重新加载所有东西),它会正确显示“*****”.当我点击EditText字段时,它会正确地将屏蔽文本从“*****”更改为“12345”因此,在获得焦点时它会起作用,但在失去焦点时则不起作用.我试过实现一个OnFocusChangeListener,但似乎没有任何影响.

有没有什么办法可以强制EditText字段在失去焦点时重绘文本?

建立:

editText.setTransformationMethod(CustomPasswordTransformationMethod(numUnobfuscatedDigits))

editText.setOnFocusChangeListener { view, hasFocus ->

((EditText)view).invalidate()

((EditText)view).refreshDrawableState()

CustomPasswordTransformationMethod:

public class CustomPasswordTransformationMethod extends PasswordTransformationMethod {

private int unObfuscated = 1;

private boolean mIsFocused = false;

/**

* @param number the number of digits that will be unObfuscated at the end of the input string. Must be a positive integer or 0.

*/

public CustomPasswordTransformationMethod(int number) {

if (number < 0) {

Log.e(TAG, "Invalid parameter number =" + number + " number of un-obfuscated digits must be a positive integer or 0.");

unObfuscated = 0;

}

unObfuscated = number;

}

@Override

public CharSequence getTransformation(CharSequence source, View view) {

return new PasswordCharSequence(source);

}

@Override

public void onFocusChanged(View view, CharSequence sourceText,

boolean focused, int direction,

Rect previouslyFocusedRect) {

super.onFocusChanged(view,sourceText,focused, direction, previouslyFocusedRect);

mIsFocused = focused;

}

private class PasswordCharSequence implements CharSequence {

private CharSequence mSource;

public PasswordCharSequence(CharSequence source) {

mSource = source; // Store char sequence

}

public char charAt(int index) {

if(mIsFocused) return mSource.charAt(index);

else {

if (index < ((length()) - unObfuscated)) return '●';

return mSource.charAt(index);

}

}

public int length() {

return mSource.length(); // Return default

}

public CharSequence subSequence(int start, int end) {

return mSource.subSequence(start, end); // Return default

}

}

};

android 屏蔽焦点,android – 如何在视图失去焦点时屏蔽EditText中的文本.相关推荐

  1. win10 uwp 让焦点在点击在页面空白处时回到textbox中

    原文:win10 uwp 让焦点在点击在页面空白处时回到textbox中 在网上 有一个大神问我这样的问题:在做UWP的项目,怎么能让焦点在点击在页面空白处时回到textbox中? 虽然我的小伙伴认为 ...

  2. android 自动恢复,Android的状态保存和恢复

    Activity的状态保存和恢复 Activity的状态什么时候需要保存和恢复 Activity的销毁一般分为两种情况: 当用户按返回按钮或你的Activity通过调用finish()销毁时,这属于正 ...

  3. android studio sugar,Android | Sugar 的介绍和简单使用

    在看过三个版本(对就是版本)greenDao教程最终发现AIDE无法使用带有注解的库的时候,我是稍有点绝望的. 同时也萌发了自己对网络教程的感慨:还是看官方文档吧官方文档我爱你. 然后呢,不想用sql ...

  4. android+禁止输入表情,Android禁止输入表情符号的EditText

    最近刚做完项目,出了个测试包 就开开心心的把项目发给老板测试了 老板刚装上就给我批评了一顿,说刚用上就发现一个重大bug,还想不想要工资了 我当时心里就想:"sb,不会用吧"... ...

  5. android xml talkback,android – 如何让TalkBack自动读取TextView错误信息?

    我目前正在使我的应用程序可访问,我的EditTexts有问题: 在每个EditText中,用户的输入在某个时刻被验证(例如,在按下按钮之后),如果输入无效,我使用editText.setError(& ...

  6. Android学习笔记之ListView与Item的焦点冲突处理

    由于ListView的Item需要焦点,Item里面的子控件(如ImageButton,Button,CheckBox等等)也需要焦点的时候,就会出现焦点冲突问题,导致Item无法获得焦点,无法相应I ...

  7. android 抢夺焦点,android焦点

    在非触摸屏设备中接收事件和处理响应的控件是具有焦点(Focused)的控件.窗口中某一时刻只能有一个具有焦点的控件,在触摸设备上通常默认情况下只有EditText控件才具有焦点.比如一个页面有3个Ed ...

  8. android editview获取焦点,Android EditText 获取不到焦点

    开发中遇到一个问题就是输入框EditText点击的时候没有弹出软键盘也没有任何反映,同级视图,其他的EditText有反映,唯有这一个没反应,搜索了下EditText相关的问题但都不是想要的信息 如上 ...

  9. Android View体系(一)视图坐标系

    http://blog.csdn.net/itachi85/article/details/50708391 前言 Android View体系是界面编程的核心,他的重要性不亚于Android四大组件 ...

  10. Android学习笔记:ScrollView卷轴视图

    ScrollView卷轴视图是指当拥有很多内容,一屏显示不完时,需要通过滚动跳来显示的视图.的使用: Java代码 <?xml version="1.0" encoding= ...

最新文章

  1. 知名文件传输协议 SCP 被曝存在 35 年历史的安全漏洞
  2. php 编程祝新年快乐_AnyCodes:免费的在线编程神器
  3. Struts2+Spring传参
  4. C++11新特性的总结
  5. 多用途bootstrap后台管理系统模板企业统计管理界面模板
  6. 7个免费强大的Ajax文件管理器
  7. Wine DLL库安装工具winetricks
  8. python微信群定时发送消息_Python3 itchat实现微信定时发送群消息的实例代码
  9. 计算机软件怎么共享使用,局域网共享软件,详细教您局域网共享软件如何使用...
  10. 医院门诊管理系统——计件收费
  11. 《剑指Offer》刷题笔记汇总
  12. 节约里程法matlab程序_物流配送路径优化研究 毕业论文.doc
  13. ectouch2.0 php5.5_Ectouch2.0 分析解读代码审计流程
  14. 【读书笔记->统计学】05-02 “概率”的整体影响-随机变量的线性变换、独立观测值概念简介
  15. C语言麻将递归,一个简洁明了的递归函数——判断[麻将]的和牌
  16. 随意编辑网页内容的简单方法
  17. 跳槽吗?4月7日18点6大细分领域4家优质名企招聘情报来了
  18. mixin(公共样式定义)
  19. 同花顺镰刀三头牛指标公式源码
  20. 塞雷三分钟漫画中国史2

热门文章

  1. k邻近算法应用实例(一) 改进约会网站的配对效果
  2. 用例设计思路 C/S测试—安装与卸载
  3. linux终端黑绿字配色方案注意事项
  4. speex的基本编码和解码流程
  5. mysql优化之insert/delete/update
  6. mysql数据库中实现内连接、左连接、右连接
  7. CCNA11月20日战报
  8. linux kprobe rootkit学习
  9. 《程序是怎样跑起来的》七
  10. 【redis】spring boot利用redis的Keyspace Notifications实现消息通知