본문 바로가기
Flutter/Flutter FAQ

Flutter 플러터에서 텍스트 편집 필드 비활성화, Disable a text edit field in flutter

by 베타코드 2023. 6. 18.
반응형

질문


I need to disable TextFormField occasionally. I couldn't find a flag in the widget, or the controller to simply make it read-only or disable. What is the best way to do it?

가끔 TextFormField를 비활성화해야 합니다. 위젯이나 컨트롤러에서 읽기 전용 또는 비활성화를 간단하게 만들 수 있는 플래그를 찾을 수 없습니다. 어떻게 하는 것이 가장 좋은 방법인가요?


답변


이 작업을 수행하는 또 다른 방법이 있습니다. 이 방법은 이 문제를 일으키지 않습니다. 누군가에게 도움이 되기를 바랍니다.

AlwaysDisabledFocusNode를 만들고 TextFieldfocusNode 속성에 전달합니다.

class AlwaysDisabledFocusNode extends FocusNode {
  @override
  bool get hasFocus => false;
}

그런 다음

new TextField(
    enableInteractiveSelection: false, // 붙여 넣기 작업 비활성화
    focusNode: new AlwaysDisabledFocusNode(),
    ...
    ...
)

업데이트: TextField에는 이제 enabled 속성이 있습니다. 이를 사용하여 TextField를 비활성화할 수 있습니다.

new TextField(
    enabled: false, 
    ...
    ...
)

참고: 이렇게 하면 텍스트 입력과 관련된 아이콘도 비활성화됩니다.

반응형

댓글