以下是一个使用Android的代码示例,用于在密码输入字段中实现隐藏/显示密码的功能:
XML布局文件(activity_main.xml):
MainActivity.java文件:
import android.os.Bundle;
import android.text.method.PasswordTransformationMethod;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private CheckBox showPasswordCheckBox;
private EditText passwordEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showPasswordCheckBox = findViewById(R.id.showPasswordCheckBox);
passwordEditText = findViewById(R.id.passwordEditText);
showPasswordCheckBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
// 显示密码
passwordEditText.setTransformationMethod(null);
} else {
// 隐藏密码
passwordEditText.setTransformationMethod(new PasswordTransformationMethod());
}
}
});
}
}
在这个示例中,我们使用了一个EditText
来接收密码输入,并设置了inputType
属性为textPassword
,这样密码输入将被隐藏。
我们还添加了一个CheckBox
来控制是否显示密码,当CheckBox
被选中时,我们使用setTransformationMethod(null)
来移除密码输入字段的密码隐藏,从而显示密码;当CheckBox
未选中时,我们使用setTransformationMethod(new PasswordTransformationMethod())
来重新应用密码隐藏,从而隐藏密码。
通过这种方式,用户可以通过勾选或取消勾选CheckBox
来控制密码的隐藏和显示。