توسعه دهنده موبایل و وب . همیشه دنبال بهتر شدن (ادرس کانالم : t.me/resfandiari)
میانبرهای سریع در فلاتر
حتما شده تا حالا وقتی توی صفحه اصلی دیوایستون دستتون رو روی ایکون یک اپلیکیشن نگه میدارید یه سری امکانات بهتون میده که بتونید موقع باز شدن اپ مستقیما به محل مورد نظرتون برید ، اینها میانبرهایی هستن که باید توی اپتون تعریف کنید.
به این میانبرهای توی فلاتر Quick actions میگن که البته در iOS معروف هست به eponymous concept
و در اندروید معروف به App Shortcuts هستن.
نحوه استفاده
- مثل همیشه اول پروژتون رو استارت کنید.
- وارد فایل pubspec.yaml بشید و اخرین نسخه این پلاگین رو به اپتون اضافه کنید.
name: quick_action
description: A new Flutter application which demonstrates use of quick actions.
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
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 کنید لایبرری رو که با این کار در واقع شما یه callback قرار میدن و هر وقت اپلیکیشن به وسیله quick action فراخوانی شد میتونید اونو هندل کنید.
@override
void initState() {
super.initState();
final QuickActions quickActions = const QuickActions();
quickActions.initialize((String shortcutType) {
if (shortcutType == 'action_decrement') {
print('The user tapped on the "decrement" action.');
} else {
print('The user tapped on the "increment" action.');
}
});
}
5. و در نهایت باید مدیریت کنیم میانبرهایی که قراره برای اپ ما نشون داده بشه
@override
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 باید یکتا باشه یعنی هر کدوم از میانبرهای شما باید شناسه type منحصر به فرد خودش رو داشته باشه.
و این چیزیه که شما در نهایت دارید.
امیدوارم به کارتون بیاد موفق باشید.
کانال من : رضا اسفندیاری
مطلبی دیگر از این انتشارات
اجرای برنامه های فلاتر در لینوکس
مطلبی دیگر از این انتشارات
تجزیه فایل لوکال Json در فلاتر به صورت asynchronous
مطلبی دیگر از این انتشارات
flutter bottom_navigation_bar