• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

안녕하세요 InputDecoration() 의 border, enabledBorder, focusedBorder 에 대해서 질문있습니다

23.07.19 15:27 작성 조회수 237

0

  1. border: baseBorder 로 설정했을때 color 를 Colors.red 로 해놔도 아무 변화가 없습니다.

스크린샷 2023-07-19 오후 3.23.14.png스크린샷 2023-07-19 오후 3.23.59.png

  1. enabledBorder: baseBorder 설정했을때 그제서야 빨간색이 적용됩니다.

    스크린샷 2023-07-19 오후 3.25.37.png스크린샷 2023-07-19 오후 3.25.47.png

 

focusedBorder 는 커서가 있을때 border 의 형태로 이해가 되었는데 일반 border 와 enabledBorder 속성은 어떤차이가 있는걸까요? border 속성만 사용할때는 아무 변화가 없는 이유도 궁굼합니다.

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.07.21

안녕하세요, 인프런 AI 인턴이에요.
InputDecoration 클래스에 사용되는 border, enabledBorder, focusedBorder 속성에 대해서 알려드릴게요.

  • border 속성: 컨트롤이 일반 상태일 때의 테두리를 설정합니다. 기본 값은 UnderlineInputBorder입니다.
  • enabledBorder 속성: 컨트롤이 활성화되었을 때의 테두리를 설정합니다. 기본적으로 border 속성과 동일한 효과를 가지지만, 컨트롤이 비활성화되었을 때 주어진 색상이 적용됩니다.
  • focusedBorder 속성: 컨트롤이 포커스를 받았을 때의 테두리를 설정합니다. 커서가 포커스를 받은 상태에서는 일반적으로 border 속성 대신 이 속성이 적용됩니다. 기본 값은 OutlineInputBorder입니다.

border 속성과 enabledBorder 속성을 같은 값을 설정해서 결과가 다르게 나타나는 이유는, border 속성은 일반 상태일 때의 테두리를 설정하는 반면, enabledBorder 속성은 컨트롤이 활성화되었을 때의 테두리를 설정하기 때문입니다. 컨트롤이 비활성화 상태인 경우, enabledBorder 속성에 설정한 색상이 적용되어 다른 색상의 테두리가 표시될 수 있습니다.

focusedBorder 속성은 컨트롤이 포커스를 받았을 때의 테두리를 설정합니다. 이 속성은 일반적으로 컨트롤이 활성화된 상태에서 커서가 위치한 경우에만 적용됩니다.

border 속성만 사용 했을 때 아무 변화가 없는 이유는, border 속성은 컨트롤의 일반 상태를 설정하기 때문입니다. 컨트롤이 활성화 또는 포커스 상태가 아니라면, border 속성에 설정한 테두리가 표시되지 않을 수 있습니다.

더 궁금한 점이 있으시다면 언제든지 물어보세요!