为什么将标识符传递给@size 注释方法不起作用?

why passing an identifier to @size annotated method not working?

这就是我要解决的问题。

TextView[] containers=new TextView[2];

我正在按照方法拨打电话。

compeletLogin(containers);

下面是方法声明

 private void compeletLogin(@Size(2) TextView[] containers) {
    mEditTextName.setVisibility(View.GONE);
    mEditTextPass.setVisibility(View.GONE);
    mButtonLogin.animate().translationY(200);
    mButtonLogin.setText(R.string.logout);
    mImageProfile.setVisibility(View.VISIBLE);
    mTextViewName.setVisibility(View.VISIBLE);
    mTextViewName.setText(name);
    for (TextView tv: containers){
        tv.setVisibility(View.GONE);
    }
}

但是当我增加数组的长度时它没有给我任何错误!

AFAIK @Size 仅适用于原始数据类型的集合或数组,如 intfloatdoublelongString .

它不适用于像 TextView

这样的对象

尝试使用 @Size(max=2) 代替 @Size(2)