【问题标题】:Remove Delay for android textPassword删除 android textPassword 的延迟
【发布时间】:2012-06-24 12:39:01
【问题描述】:

在 EditText 视图中输入密码时,正在显示字符,经过一段时间的延迟后显示为 DOT,我想消除此延迟。它应该直接显示为 DOT。

我如何在 Android 上做到这一点?

【问题讨论】:

  • @Lipis 即使在输入密码时,也没有人应该能够看到我输入的字符。 :)
  • 连你都不行……! :) 人们用我们的大手指做错了.. 当您第五次输入密码时,它仍然显示错误的密码,这很烦人.. :)
  • @Lipis 这很危险,即使我输入密码,我旁边的人也能看到所有字符,:)
  • 你还打算如何隐藏你的手指不被窥探?

标签: android passwords android-edittext


【解决方案1】:

我知道这已经很老了,但这里有一个有用的提示! (这也可以)

如果您将焦点从当前 EditText 移动到下一个,它将跳过延迟,因此如果您正在创建一个 PIN 屏幕,那么您只需立即将焦点移到下一个“pin”上,它就会跳过延迟并立即显示星号。

如果您只有 1 个 EditText,您也许还可以将 rootView 或容器设置为可聚焦的并为其提供焦点。

【讨论】:

    【解决方案2】:

    使用来自 AOSP PasswordTransformationMethod.java 的代码并修改它以满足您的需要。从中创建新类 MyPasswordTransformationMethod 并修改其中的 Visible 类。 它还需要更改其余代码,因为它访问一些私有属性,但它们大多是常量,所以很容易。

    private static class Visible
    extends Handler
    implements UpdateLayout, Runnable
    {
        public Visible(Spannable sp, MyPasswordTransformationMethod ptm) {
            mText = sp;
            mTransformer = ptm;
            //postAtTime(this, SystemClock.uptimeMillis() + 1500); 
            //replaced with following line
            postAtFrontOfQueue(this);
        }
    
        public void run() {
            mText.removeSpan(this);
        }
    
        private Spannable mText;
        private MyPasswordTransformationMethod mTransformer;
    }
    

    【讨论】:

      【解决方案3】:

      强制隐藏密码,

      android.provider.Settings.System.putInt(this.getContentResolver(),android.provider.Settings.System.TEXT_SHOW_PASSWORD, 0);

      注意 :它不会显示任何字符,直接点将显示在你的视图中没有任何延迟 android:password 属性设置为 true强>

      【讨论】:

      • 编译但可能需要许可。我还需要一个视图本地的东西。
      【解决方案4】:

      这是 Android 中的用户设置,我不相信它可以通过代码控制。它旨在帮助用户输入正确的密码。

      --编辑-- 除了提问者的评论,设置可以在以下位置找到:

      设置 > 安全 > 显示密码

      以上涉及Android ICS,设置应该与之前版本类似。

      【讨论】:

      • Android 中的用户设置在哪里可以配置?
      • 在设置菜单的安全部分(至少在 ICS 中)有“使密码可见”选项。
      • 取消选中使密码可见后它可以工作,但我不能以编程方式执行此操作吗?
      • 我找到了以编程方式执行此操作的方法。 :)
      • @user370305 我已经分享了解决方案作为这个问题的答案,它真的像天使一样工作:)
      猜你喜欢
      • 2012-04-01
      • 2012-11-15
      • 1970-01-01
      • 2019-05-27
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 1970-01-01
      相关资源
      最近更新 更多