[Flutter]텍스트필드의 첫 글자를 소문자로

임효진·2024년 3월 25일
0

Flutter

목록 보기
11/22

Flutter에는 iOS의 UITextField에 해당하는 autocapitalizationType 속성이 없다. 즉, 키보드의 자동 대문자화 설정을 직접 조절하는 속성이 없다.

나의 경우에는 특정 상황에서 첫 글자는 소문자로 시작해야했기에, 아래와 같은 로직을 추가하였다.

TextField(
  onChanged: (value) {
    if (value.length == 1) {
      final lowerCaseValue = value.toLowerCase();
      _controller.value = TextEditingValue(
        text: lowerCaseValue,
        selection: TextSelection.collapsed(offset: lowerCaseValue.length),
      );
    }
  },
)

그러나 이 방법은 사용자가 입력한 첫 글자가 대문자로 자동 설정되는 것을
방지하는 방법은 아니고 유저가 첫 글자를 입력할 때 강제로 소문자로 변환하는 방법을 제공한 것이므로 참고 바란다.

profile
핫바리임

0개의 댓글