[flutter] 플러터에서 위젯에 따라 Visibility 조절하기
플러터에서는 Widget의 Visibility를 동적으로 조절하여 화면에서 보이거나 보이지 않도록 할 수 있습니다. 이를 통해 사용자 인터페이스를 동적으로 변경할 수 있는 유연한 앱을 만들 수 있습니다.
Visibility 위젯
플러터에서 Visibility 위젯은 child 속성을 통해 자식 위젯을 감싸고, visible 속성을 통해 해당 위젯의 표시 여부를 조절할 수 있습니다. true로 설정하면 자식 위젯이 화면에 표시되고, false로 설정하면 화면에 표시되지 않습니다.
Visibility(
visible: _isVisible,
child: Container(
// 자식 위젯 설정
),
)
위 예제에서 _isVisible
변수의 값을 변경함으로써 해당 Container 위젯이 화면에 표시되거나 숨겨지도록 할 수 있습니다.
조건부 Visibility
흔히 사용되는 패턴 중 하나는 조건부 Visibility입니다. 예를 들어, 사용자가 버튼을 클릭하거나 특정 조건을 만족하는 경우에만 특정 위젯을 보이게 하고 싶을 때, 이 기능을 사용할 수 있습니다.
Visibility(
visible: _isButtonClicked,
child: RaisedButton(
// 버튼 설정
),
)
위 코드에서 _isButtonClicked
변수가 true일 때만 RaisedButton이 화면에 표시됩니다.
토글 버튼을 통한 Visibility 조절
토글 버튼과 함께 Visibility를 사용하여, 사용자가 버튼을 토글할 때마다 특정 위젯을 보이거나 숨길 수 있습니다.
Visibility(
visible: _isVisible,
child: ToggleButton(
// 토글 버튼 설정
onPressed: () {
setState(() {
_isVisible = !_isVisible;
});
},
),
)
위 코드에서 _isVisible
변수를 통해 해당 위젯의 화면 표시 여부를 토글할 수 있습니다.
위와 같이 Visibility 위젯을 활용하여, 플러터 앱에서 동적으로 위젯을 보이거나 숨길 수 있습니다. 이를 통해 사용자 경험을 향상시키고, 앱의 유연성을 높일 수 있습니다.