[flutter] 플러터에서 Visibility 설정을 이용한 소셜 공유 버튼 관리하기

플러터(Flutter) 앱을 개발하다보면 특정 기능이나 UI 요소를 동적으로 제어해야 하는 경우가 있습니다. 예를 들어, 특정 조건이 충족되지 않을 때 UI에 특정 버튼을 숨기고, 조건이 충족될 때 보이도록 만들어야 할 수도 있습니다. 이번 포스트에서는 플러터의 Visibility 위젯을 사용하여 이러한 요구 사항을 해결하는 방법에 대해 살펴보겠습니다.

Visibility 위젯

Visibility 위젯은 자식 위젯을 표시하거나 숨길 수 있는 유용한 위젯입니다. Visibility 위젯은 visible (보이기), invisible (보이지 않기), gone (공간 차지 X, 영향 X)의 세 가지 모드로 설정할 수 있습니다.

예시

아래의 예시는 특정 조건에 따라 소셜 공유 버튼을 보이거나 숨기는 방법을 보여줍니다.

bool isLoggedIn = false; 

Widget build(BuildContext context) {
  return Column(
    children: [
      // 다른 위젯들...
      Visibility(
        visible: isLoggedIn,
        child: ElevatedButton(
          onPressed: () {
            // 공유 기능 구현
          },
          child: Text('공유하기'),
        ),
      ),
    ],
  );
}

위의 코드에서 소셜 공유 버튼은 isLoggedIn 변수에 따라 보이거나 숨겨집니다. 이 변수의 값에 따라 해당 버튼이 화면에 표시되거나 표시되지 않습니다.

결론

플러터의 Visibility 위젯을 사용하면 UI 요소를 동적으로 제어하는 것이 간단해집니다. 특정 조건에 따라 UI를 조작해야 하는 경우에 유용하게 활용할 수 있으므로, 이를 참고하여 앱을 보다 효율적으로 개발할 수 있습니다.

플러터 공식 문서에서 Visibility 위젯에 대해 더 알아볼 수 있습니다.