dev/flutter
flutter 안드로이드 stretch 오버스크롤 효과
wlrn566
2023. 10. 24. 14:56
오버스크롤 효과 | Android 개발자 | Android Developers
이제 Android 14 베타를 사용할 수 있습니다. 지금 사용해 보시고 의견을 알려 주세요. 오버스크롤 효과 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 12
developer.android.com
안드로이드 12 이상인 기기에서 오버스크롤이 된 경우 조금 늘어나는 스트레치 효과가 도입되었다.
플러터 3.10.6 을 사용하지만 아직 안드로이드 기기에서 glow효과가 나오고 있었다.
glow시 나오는 파란색이 싫어서 아래 코드로 대체했었다.
body: ScrollConfiguration(
behavior: NoGlowScrollBehavior(), // 안드로이드 스크롤 시 푸른 빛 없애기
child: CustomScrollView(
controller: widget.scrollController,
slivers: widget.slivers,
),
),
import 'package:flutter/material.dart';
class NoGlowScrollBehavior extends ScrollBehavior {
@override
Widget buildViewportChrome(
BuildContext context,
Widget child,
AxisDirection axisDirection,
) {
return child;
}
}
안드로이드 스트레치 효과를 주기 위해서는 Material3 디자인을 사용하도록 설정하면 된다.
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
useMaterial3: true
),
);
}
또는 StretchingOverscrollIndicator 를 덮어씌어주면 된다.
body: ScrollConfiguration(
behavior: NoGlowScrollBehavior(), // 안드로이드 스크롤 시 푸른 빛 없애기
child: StretchingOverscrollIndicator( // 스트레치 효과
axisDirection: AxisDirection.down,
child: CustomScrollView(
controller: widget.scrollController,
slivers: widget.slivers,
),
),
),