emadbahreini
emadbahreini
خواندن ۱ دقیقه·۴ سال پیش

quick actions فلاتر

حتما تا حالا براتون پیش اومده وقتی توی صفحه اصلی گوشیتون دسستون رو روی یک اپلیکیشن نگه میدارید یه سری امکانات بهتون میده که بعد از باز شدن اپ دقیقا به محل مورد نظر برید.این ها میانبر هایی (quick actions )هستن که باید توی اپتون تعریف کنید.

به این میانبرهای توی فلاتر Quick actions میگن که البته در iOS معروف هست به eponymous concept

و در اندروید معروف به App Shortcuts هستن .

برای اضافه کردن این میانبر ها باید از پلاگین quick_actions استفاده کنید.


نحوه استفاده

  1. اول پروژتون رو استارت کنید.
  2. وارد فایل pubspec.yaml بشید و اخرین نسخه پلاگین quick_actions رو اضافه کنید.
name: quick_action description: A new Flutter application which demonstrates use of quick actions. version: 1.0.0+1 environment: sdk: &quot>=2.1.0 <3.0.0&quot dependencies: quick_actions: ^0.3.0+1 flutter: sdk: flutter dev_dependencies: flutter_test: sdk: flutter flutter: uses-material-design: true

3.در ادامه رفرنس زیر رو به main.dart اضافه کنید.

import ‘package:quick_actions/quick_actions.dart’;

4.حالا باید در initstate لایبرری رو initialize کنید که هر وقت اپلیکیشن با استفاده از quick actions باز شد این تابع فراخونی بشه.

@override void initState() { super.initState(); final QuickActions quickActions = const QuickActions(); quickActions.initialize((String shortcutType) { if (shortcutType == 'action_decrement') { print('The user tapped on the &quotdecrement&quot action.') } else { print('The user tapped on the &quotincrement&quot action.'); } }); }

5.در نهایت هم باید quick action های اپلیکیشن خودمون رو مدیریت کنیم.

@overrid void initState() { super.initState(); /** * previous code **/ quickActions.setShortcutItems(<ShortcutItem>[ const ShortcutItem( type: 'action_decrement', localizedTitle: 'decrement', icon: 'minus'), const ShortcutItem( type: 'action_increment', localizedTitle: 'increment', icon: 'plus') ]); }

نکته مهم :

چیزی که باید حواسمون باشه اینه که هر میانبر باید type یکسان و منحصر به فرد خودش رو داشته باشه.

در نهایت این چیزیه که ما میبینیم!


flutterفلاتردارتdart
برنامه نویس فلاتر و علاقه مند به یادگیری چیزای جدید!!
شاید از این پست‌ها خوشتان بیاید