[flutter] 플러터 앱에서 지역화된 유효성 검사 메시지 사용 방법

앱을 개발하다 보면 사용자로부터 입력받는 데이터의 유효성을 검사하여 오류 메시지를 표시해야 하는 경우가 있습니다. 공식적으로 “유효성 검사” 또는 “폼 유효성 검사” 라고도 불리는 이 기능을 지역화된 형태로 적용하는 방법을 알아보겠습니다.

Flutter의 유효성 검사

플러터는 FormTextFormField와 같은 위젯을 사용하여 유효성 검사를 수행할 수 있습니다. 예를 들어, TextFormField 위젯에서 입력값이 비어 있으면 오류 메시지를 표시하도록 구현할 수 있습니다.

TextFormField(
  validator: (value) {
    if (value.isEmpty) {
      return '값을 입력해주세요.';
    }
    return null;
  },
),

위의 코드에서 validator 속성은 입력값이 유효하지 않은 경우 해당 오류 메시지를 반환합니다.

지역화된 오류 메시지 사용하기

이제 이 유효성 검사 오류 메시지를 지역화된 형태로 사용해보겠습니다.

  1. 간단한 지역화 방법: 우선 각 언어에 따른 오류 메시지를 key-value 쌍으로 가지고 있는 맵을 생성하고, 해당 언어로 설정된 경우에 해당 메시지를 반환하도록 수정합니다.
TextFormField(
  validator: (value) {
    if (value.isEmpty) {
      return _localizedErrorMessage['valueInput'];
    }
    return null;
  },
),
  1. 지역화 패키지 사용: 더 많은 요구 사항이 있는 경우, flutter_localizations 패키지와 같은 지역화 패키지를 사용하여 앱에 다국어 지원을 추가할 수 있습니다. 각 언어에 대한 메시지를 모아둔 .arb 파일을 이용하여 키를 통해 오류 메시지를 가져올 수 있습니다.

결론

Flutter 앱에서 지역화된 유효성 검사 메시지를 사용하는 방법을 알아보았습니다. 사용자가 다양한 언어로 앱을 이용할 수 있도록 지역화된 메시지를 제공함으로써 사용자 경험을 향상시킬 수 있습니다.