반응형
질문
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
를 만들고 TextField
의 focusNode
속성에 전달합니다.
class AlwaysDisabledFocusNode extends FocusNode {
@override
bool get hasFocus => false;
}
그런 다음
new TextField(
enableInteractiveSelection: false, // 붙여 넣기 작업 비활성화
focusNode: new AlwaysDisabledFocusNode(),
...
...
)
업데이트:
TextField
에는 이제 enabled
속성이 있습니다. 이를 사용하여 TextField
를 비활성화할 수 있습니다.
new TextField(
enabled: false,
...
...
)
참고: 이렇게 하면 텍스트 입력과 관련된 아이콘도 비활성화됩니다.
반응형
댓글