簡體   English   中英

顯示鍵盤時如何攔截顫振后退按鈕

[英]How to intercept flutter back-button when keyboard is shown

我想在顫抖中攔截軟鍵盤的后退按鈕。 因此,當我想通過按后退按鈕關閉鍵盤時,我希望調用其他功能。 我怎樣才能做到這一點?

鍵盤后退按鈕

在此處輸入圖片說明

您可以使用keyboard_visibility包來實現此目的。

工作實例

關閉鍵盤后,以下代碼將顯示SnackBar

import 'package:flutter/material.dart';
import 'package:keyboard_visibility/keyboard_visibility.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  GlobalKey<ScaffoldState> _key;

  @override
  void initState() {
    super.initState();
    _key = GlobalKey<ScaffoldState>();
    KeyboardVisibilityNotification().addNewListener(
      onHide: () {
        _key.currentState.showSnackBar(
          SnackBar(
            content: Text("Keyboard closed"),
          ),
        );
      },
    );
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        key: _key,
        body: Center(
          child: TextField(),
        ),
      ),
    );
  }
}

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM