패키지, 저장소 및 앱 카테고리 검색

flutter_interactive_keyboard 표지
패키지 상세v0.2.0

flutter_interactive_keyboard

iOS의 네이티브 동작과 유사하게 키보드를 상호작용적으로 닫는 데 사용할 수 있는 플러터 플러그인입니다. 안드로이드에서는 드래그 없이 기능을 모방합니다.

AndroidiOS
30일 다운로드
56
좋아요
33
Pub 점수
140

패키지 설치

flutter pub add flutter_interactive_keyboard

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

Flutter 플러그인으로 iOS의 네이티브 드래그-투-디스미스 동작을 재현하는 인터랙티브 키보드 닫기 기능을 제공합니다. iOS에서는 사용자가 키보드를 아래로 스와이프하여 닫을 수 있습니다. Android에서는 실제 드래그 상호작용 없이 유사한 제스처를 에뮬레이션합니다. 이 플러그인은 플랫폼 간 직관적인 키보드 제어를 제공함으로써 사용자 경험을 향상시키며, 네이티브 모바일 행동과 일관성을 유지합니다. 기존 Flutter 앱에 최소한의 설정으로 원활하게 통합할 수 있습니다.

사용 사례

  • 양식 내 상호작용 키보드 닫기
  • 채팅 또는 입력 중심 앱에서 UX 향상
  • 안드로이드에서 iOS 네이티브 키보드 제스처 모방
  • 제스처 기반 제어를 통한 접근성 향상

주요 기능

  • iOS 스타일의 드래그하여 닫기 제스처
  • Android 제스처 에뮬레이션
  • 최소 통합 노력
  • 크로스 플랫폼 일관성
  • 종료 중 부드러운 애니메이션

적합한 대상

  • iOS 유사 UX를 목표로 하는 개발자
  • 자주 키보드를 사용하는 앱
  • 사용자 경험 중심의 모바일 애플리케이션
  • 양식 중심 또는 메시징 인터페이스

고려 사항

  • 키보드 숨기기만 가능
  • 제스처 민감도에 대한 사용자 정의 없음
  • Android의 동작은 진짜 드래그와 다릅니다
  • 다른 제스처 감지기와 충돌할 수 있습니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

pub package

This plugin is not under active development. If you'd like to contribute, PRs are welcomed.

Flutter Interactive Keyboard

A way to mimic the iOS interactive dismissable keyboard in Flutter. For Android, the behavior will still be applied without animation due to the Android keyboard limitations.

How to use it

The KeyboardManagerWidget defines the area where the draggable keyboard is enabled. Gestures are passed to the widget in order to permit both scrolling and drag-to-dismiss behavior.

focusNode is required when using a TextField to manage the keyboard opening and closing.

See the full example to see a complete implementation.

KeyboardManagerWidget(
  focusNode: _focusNode,
  child: ListView.builder(
    itemCount: 100,
    itemBuilder: (context,index){
      return ListTile(
        title: Text("element $index"),
      );
    },
  ),
)

Advanced

Change focusNode

If your app has more than one TextField that should trigger the keyboard, you can change the current FocusNode from the KeyboardManagerWidgetState as follows:

// Init variable
GlobalKey<KeyboardManagerWidgetState> _key = GlobalKey();

// In the build method
KeyboardManagerWidget(
  key: _key,
  ...
)

// Wherever you like
_key.currentState.substituteFocusNode = newFocusNode;

카테고리

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.