日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Flutter?Widget開發Shortcuts快捷鍵實例_Android

作者:程序員界的小學生 ? 更新時間: 2023-01-07 編程語言

正文

Flutter所提供的鍵盤快捷鍵系統直接用就很棒了,而且還提供了大量的空間可根據自己的喜好配置操作,之前那一篇博客介紹了小部件Focus

它會指示Flutter以你的應用來包裹鍵盤事件,以尋找匹配的Shortcuts小部件,這便會帶入Shortcuts小部件。

ShortcutActivators到Intents的映射

上一篇博客,我們以Accordion屬性所假想的小部件樹,挑個你想用來觀察按鍵事件的小部件并以Shortcuts小部件來包裝,為了讓你的Shortcuts小部件發揮實際作用,給shortcuts參數提供一個ShortcutActivators到Intents的映射

Accordion(
    child: Shortcuts(
        shortcuts:<ShortcutActivator, Intent>{},
        child: AccordionSections(),
    ),
)

ShortcutActivators是一個輔助類,用于捕獲特定的鍵盤組合并帶有可選的metaKey屬性修改器。

想要捕獲Control + C ?

創建一個SingleActivator,提供要監控的按鍵來作為位置參數,而就本例子而言是C鍵——并將control設置為true

SingleActivator(
    LogicalKeyboardKey.keyC,
    control: true,
)

把這個activator當作一個鍵值放在你的Shortcuts小部件中,并將其與Intent配對

final controlC = SingleActivator(
    LogicalKeyboardKey.keyC,
    control: true,
)
Accordion(
    child: Shortcusts(
        shortcuts: {
            controlC: CopyIntent(),
        },
        child: AccordionSections(),
    ),
)

Intents是你所指定的各種類,是基于intent類所構建的擴展,并描述了用戶所期望的結果

class CopyIntent extends Intent {
}

Flutter根據你的activator來檢視按鍵事件,一旦發現匹配你所指定的intent將返回作用中 FocusNode,以便自行搜索來實現用戶的intent。

這就牽涉到下一個要介紹的小部件Action。

如果想了解有關Shortcuts的內容,或者關于Flutter的其他功能,請訪問flutter.dev

原文鏈接:https://juejin.cn/post/7170929670320291847

欄目分類
最近更新