这一需求可能比较少见 , 但也是常见的 . 往往我们需要验证输入的密码是否屏蔽 , 这时怎么处理呢 ?
匹配是否为"********"
? 先不说是否正确 , 假设不是用 * 作为掩盖 , 而是用别的特殊字符呢? 再逐个匹配吗? 显然不尽现实 , code就是为了一劳永逸 .
这里先说说为什么不能匹配到"*******"
, 因为就算用 * 作为了屏蔽 , 但 Text 的值依然是原来的字符 .
那么说说正确的方式吧 —– 自定义Matcher :
简单来说就是检查密码输入框的输入类型是否为PASSWORD
public static Matcher<View> isPassword(){
return new TypeSafeMatcher<View>() {
@Override
public void describeTo(Description description) {
description.appendText(