شرح استخدام drop_nav_bar وتحسين شكل التطبيق الخاص بك في flutter
من المكتبات التي تعطي شكل جمالي لتطبيقك وهيا drop nav bar وهيا احد المكتبات الجميله ذات التصميم البسيط مع تاثير اثناء الانتقال بين كل عنصر والاخر ويمكنك تنفيذ هذه المكتبة في تطبيقك بسهوله جدا عن طريق تثبيتها من خلال الامر الذي نقدمه لكم في الجزء التالي وهو عباره عن package الخاص بالمكتبة , تستطيع القيام بهذه العملية بشكل بسيط جدا جدا من خلال الكود الذي نقدمه لكم في الاسفل وهذه ليست اول مكتبة نقدمها لكم في تغيير شكل ال nav bar بل يمكنكم الاطلاع على كثير من المكتبات المقدمه من خلال الشروحات السابقه .
وصف Flutter. تتيح مجموعة أدوات واجهة المستخدم المحمولة من Google ، Flutter ، للمطورين إنشاء تطبيقات مذهلة ومصممة محليًا من قاعدة شفرة واحدة لسطح المكتب والجوال والويب. Flutter هو برنامج مجاني ومفتوح المصدر ، ويتكامل مع الكود الحالي ، ويستخدمه المطورون والشركات في جميع أنحاء العالم.
وصف Flutter. تتيح منصة Flutter مفتوحة المصدر من Google تطوير تطبيقات سطح المكتب والجوال والتطبيقات عبر الإنترنت من قاعدة كود واحدة. Flutter ، على عكس البدائل الأخرى المحبوبة ، هي مجموعة SDK كاملة ، أو مجموعة تطوير برمجيات. 04 أغسطس 2022
قدمت Google Flutter ، وهي عبارة عن حزمة SDK للجوال مفتوحة المصدر ومتعددة المنصات تتيح للمبرمجين إنشاء تطبيقات جوال لمنصتي Android و iOS من قاعدة بيانات واحدة.
10 يونيو 2022
يتم استخدام كل من Java و Flutter لإنشاء تطبيقات عبر الأنظمة الأساسية. يُطلق على إطار العمل المحمول عبر الأنظمة الأساسية Flutter.
add package :
water_drop_nav_bar: ^2.2.0+4
مميزات مكتبة water_drop_nav_bar
تصميم فريد: يتميز شريط التنقل بتصميم قطرة ماء جذاب وسهل الاستخدام.
التخصيص: يمكنك تخصيص ألوان وأحجام وصور شريط التنقل ليناسب احتياجاتك.
التفاعل: يتفاعل شريط التنقل مع لمسات المستخدم بطريقة سلسة وجميلة.
سهولة الاستخدام: سهلة الاستخدام والتكامل مع مشاريع Flutter.
How to use water_drop_nav_bar in Flutter
يمكنك استخدام الكود حتى تتمكن من اظهار المكتبة في المكان المخصص لها واستعمال page view حتى تتمكن من عرض الصفحات في نفس المكان كما هو موضح بالكود التالي .
ui.dart
class TestPage extends StatefulWidget {
const TestPage({Key? key}) : super(key: key);
@override
State<TestPage> createState() => _TestPageState();
}
class _TestPageState extends State<TestPage> {
int currentIndex = 0;
late PageController pageController;
@override
void initState() {
super.initState();
pageController = PageController(initialPage: currentIndex);
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.black38,
appBar: AppBar(
backgroundColor: Colors.black38,
title: const Text('Test Page'),
),
body: PageView(
physics: const BouncingScrollPhysics(),
controller: pageController,
onPageChanged: (value){
setState(() {
currentIndex = value;
});
},
children: [
Container(
alignment: Alignment.center,
child: Icon(
Icons.bookmark_rounded,
size: 56,
color: Colors.amber[400],
),
),
Container(
alignment: Alignment.center,
child: Icon(
Icons.favorite_rounded,
size: 56,
color: Colors.red[400],
),
),
Container(
alignment: Alignment.center,
child: Icon(
Icons.email_rounded,
size: 56,
color: Colors.green[400],
),
),
Container(
alignment: Alignment.center,
child: Icon(
Icons.folder_rounded,
size: 56,
color: Colors.blue[400],
),
),
],
),
bottomNavigationBar: WaterDropNavBar(
backgroundColor: Colors.white,
onItemSelected: (index) {
setState(() {
currentIndex = index;
});
pageController.animateToPage(currentIndex,
duration: const Duration(milliseconds: 400),
curve: Curves.easeOutQuad);
},
selectedIndex: currentIndex,
barItems: [
BarItem(
filledIcon: Icons.bookmark_rounded,
outlinedIcon: Icons.bookmark_border_rounded,
),
BarItem(
filledIcon: Icons.favorite_rounded,
outlinedIcon: Icons.favorite_border_rounded),
BarItem(
filledIcon: Icons.email_rounded,
outlinedIcon: Icons.email_outlined,
),
BarItem(
filledIcon: Icons.folder_rounded,
outlinedIcon: Icons.folder_outlined,
),
],
),
);
}
}
android sdk manager تحميل flutter developers applications create app android android studio mac