2016-08-09 4 views
0

Android 유효성 검사 Saripaar 유효성 검사를 위해 라이브러리를 사용하고 있습니다. XML 리소스 문자열을 메시지 속성 에 할당해야합니다. getResources.getStrings (R .strings.myString)를 "this"가 로컬 범위 밖에서 액세스 할 수 없으므로이 범위에서 사용하십시오.XML 범위의 전역 리소스 파일에서 문자열 값 가져 오기

public class signup extends Activity 
    { 
     @Order(1) 
     @Email(message = "Please Type Correct Email!") 
     private EditText email; 
     //onCreate().... 
    } 
+0

이 문제를 다음과 같이 어떻게 든 상수 문자열을 정의하여 해결됩니다. 여기 해결책은 – Usman

+0

입니다. 'public final String str = R.string.error_field_required' – Usman

답변

1

시도

@Email(messageResId = R.string.invalid_email) 
@BindView(R.id.et_mail) 
EditText etMail; 


From source code of saripar 

@ValidateUsing(EmailRule.class) 
@Retention(RetentionPolicy.RUNTIME) 
@Target(ElementType.FIELD) 
public @interface Email { 
    boolean allowLocal()  
default false; 

    int sequence()   default -1; 
    int messageResId()  default -1; 
    String message()  default "Invalid email"; 
} 
+0

전에 시도한 것처럼 작동하지 않습니다. – Usman

+0

@Email 필수 문자열은 상수입니다. 사용하기 전에 'final'로 정의해야합니다. – Usman

+0

Saripaar는 사용하고 있습니까? bcoz com.mobsandgeeks로이 일을 할 수 있습니다. android-saripaar : 2.0.3 – darwin