gpt4 book ai didi

java - Android - 密码转换(将 * 转换为文本)

转载 作者:行者123 更新时间:2023-12-01 22:10:04 25 4
gpt4 key购买 nike

这是一个 android 类,用于将密码从点转换为 * 或星号,但我想向用户显示一些预定义的文本而不是星号,因为我用字符数组中的字符替换了星号。但是当我运行时只需轻按一下按钮即可应用程序。P 在记录器中打印无限次。任何人都可以解释一下吗?

class AsteriskPasswordTransformationMethod extends PasswordTransformationMethod {
static int a=0;
char[] yay= {'P','l','e','a','s','e','w','r','i','t','e'};
@Override
public CharSequence getTransformation(CharSequence source, View view) {
return new PasswordCharSequence(source);
}
private class PasswordCharSequence implements CharSequence {
private CharSequence mSource;

public PasswordCharSequence(CharSequence source) {
mSource = source; // Store char sequence
}
public char charAt(int index) {
Log.v("what is the char",""+yay[a]);
char x= yay[a]; // This is the important part
return x;
}
public int length() {
return mSource.length(); // Return default
}

public CharSequence subSequence(int start, int end) {
return mSource.subSequence(start, end); // Return default
}
}

最佳答案

我想这就是你想要的:

Log.v("what is the char",""+yay[index]);
char x= yay[index];

它只打印出“p”,因为a始终为0,因此yay[a]始终为“p”。

<小时/>

但是你为什么要这样做呢?只需将字段的输入类型设置为 TYPE_TEXT_VARIATION_PASSWORD,Android 就会为您完成此操作。

关于java - Android - 密码转换(将 * 转换为文本),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31959454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com