본문 바로가기
기초다지기/Flutter&Dart

flutter Visibility_detector 패키지

by 김빵그 2023. 9. 25.
 

visibility_detector | Flutter Package

A widget that detects the visibility of its child and notifies a callback.

pub.dev

설치방법

 $ flutter pub add visibility_detector
  • flutter 앱에서 위젯의 가시성 상태를 감지하는 데 사용하는 패키지, 위젯이 화면에서 보이거나 사라질 때 일련의 작업을 수행할 수 있다
  • 스크롤 가능한 위젯 (ListView, GridView) 에서 특정 위젯이 화면에 나타나거나 사라질 때 작업을 수행
  • 애니메이션 또는 비디오 재생을 일시 중지하고 화면에서 사라질 때 다시 시작

사용 방법

import 'package:visibility_detector/visibility_detector.dart';
VisibilityDetector(
  key: Key("unique_key"), // 고유한 키를 지정합니다.
  onVisibilityChanged: (visibilityInfo) {
    // 가시성 상태가 변경될 때 실행할 작업을 정의합니다.
    if (visibilityInfo.visibleFraction == 0.0) {
      // 위젯이 화면에서 사라질 때
      // 작업을 수행합니다.
    } else {
      // 위젯이 화면에 나타날 때
      // 작업을 수행합니다.
    }
  },
  child: YourWidget(), // 가시성을 감시할 위젯을 추가합니다.
)

onVisibilityChanged

  • 콜백을 사용하여 위젯의 가시성 상태가 변경 될 때 실행할 작업을 정의한다 
  • 이 콜백은 VisibilityInfo 객체를 받으며 visibleFraction 속성을 통해 위젯이 얼마나 화면에 보이는지 확인할 수 있다