By using this site, you agree to the Privacy Policy and Terms of Use.
موافق
عرب فلاترعرب فلاتر
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
قراءة: شرح استخدام ويدجت BottomNavigationBar في فلاتر
شارك
تسجيل الدخول
إشعار أظهر المزيد
Aa
عرب فلاترعرب فلاتر
Aa
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
Search

أقسام الموقع

استكشف جميع أقسام الموقع
قسم Dart في موقع عرب فلاتر

Dart

59 مقالات
قسم Widgets في موقع عرب فلاتر

Widgets

104 مقالات
قسم Packages في موقع عرب فلاتر

Packages

19 مقالات
قسم Tutorials في موقع عرب فلاتر

Tutorials

22 مقالات

أخر المواضيع

استكشف أخر المواضيع المنشورة
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا

5
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials

حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر

10
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials

أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات

17
لديك حساب موجود؟ تسجيل الدخول
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
عرب فلاتر > Widgets > شرح استخدام ويدجت BottomNavigationBar في فلاتر
Widgets

شرح استخدام ويدجت BottomNavigationBar في فلاتر

عبدالله يوسف
أخر تحديث 2024/11/15
بواسطة عبدالله يوسف اضف تعليق 6 دقيقة للقراءة 2814 مشاهدات 5
شارك
شرح استخدام ويدجت BottomNavigationBar في فلاتر
شرح استخدام ويدجت BottomNavigationBar في فلاتر
شارك

خدماتنا البرمجية – عرب فلاتر🚀

خدماتنا البرمجية – عرب فلاتر

Flutter هو إطار عمل يستخدم لبناء تطبيقات عالية الجودة والجمالية. واحدة من الميزات المهمة التي يوفرها Flutter هي BottomNavigationBar. يتم استخدام BottomNavigationBar لإنشاء شريط تنقل في الأسفل من التطبيق الذي يحتوي على عدة عناصر يمكن الانتقال بينها بسهولة. في هذه المقالة، سوف نتحدث عن BottomNavigationBar في Flutter ونوضح جميع خصائصه بالتفصيل.

المحتويات
ما هو BottomNavigationBar في فلاتر؟خصائص BottomNavigationBaritemscurrentIndexonTapbackgroundColorselectedItemColorunselectedItemColorshowSelectedLabelsshowUnselectedLabelstypeelevationمثال على استخدام BottomNavigationBar في فلاتر

ما هو BottomNavigationBar في فلاتر؟

BottomNavigationBar هو ويدجت في Flutter ويستخدم على نطاق واسع في إنشاء تطبيقات الهاتف المحمول والويب. يتكون BottomNavigationBar من مجموعة من العناصر التي يمكن الانتقال بينها باستخدام النقر على العنصر الذي يريده المستخدم. يمكن للمستخدم تخصيص BottomNavigationBar وفقًا لمتطلبات التطبيق الخاص به.

“اقرأ أيضاً: شرح استخدام ويدجت SnackBar في فلاتر“


خصائص BottomNavigationBar

items

تحتوي هذه الخاصية على قائمة من العناصر التي يجب عرضها في BottomNavigationBar. يجب أن تكون العناصر من نوع BottomNavigationBarItem. يمكن للمستخدم تخصيص الرموز والنصوص والألوان لكل عنصر.

BottomNavigationBar(
  items: [
    BottomNavigationBarItem(
      icon: Icon(Icons.home),
      label: 'Home',
    ),
    BottomNavigationBarItem(
      icon: Icon(Icons.search),
      label: 'Search',
    ),
    BottomNavigationBarItem(
      icon: Icon(Icons.person),
      label: 'Profile',
    ),
  ],
)

currentIndex

تحدد هذه الخاصية العنصر الحالي المحدد في BottomNavigationBar. يمكن للمستخدم تعيين هذه القيمة بناءً على حالة التطبيق الحالية.

BottomNavigationBar(
  currentIndex: _selectedIndex,
  onTap: _onItemTapped,
  ...
)

onTap

يتم استخدام هذه الخاصية لتحديد دالة التي يتم استدعاؤها عند النقر على عنصر في BottomNavigationBar.

void _onItemTapped(int index) {
  setState(() {
    _selectedIndex = index;
  });
}

BottomNavigationBar(
  onTap: _onItemTapped,
  ...
)

“اقرأ أيضاً: شرح استخدام ويدجت WillPopScope في فلاتر“

backgroundColor

تحدد هذه الخاصية لون خلفية BottomNavigationBar.

BottomNavigationBar(
  backgroundColor: Colors.white,
  ...
)

selectedItemColor

يحدد هذه الخاصية لون العنصر المحدد في BottomNavigationBar.

BottomNavigationBar(
  selectedItemColor: Colors.blue,
  ...
)

unselectedItemColor

تحدد هذه الخاصية لون العناصر غير المحددة في BottomNavigationBar.

BottomNavigationBar(
  unselectedItemColor: Colors.grey,
  ...
)

showSelectedLabels

تحدد هذه الخاصية ما إذا كان يتم عرض الأسماء للعناصر المحددة في BottomNavigationBar.

BottomNavigationBar(
  showSelectedLabels: true,
  ...
)

showUnselectedLabels

تحدد هذه الخاصية ما إذا كان يتم عرض الأسماء للعناصر غير المحددة في BottomNavigationBar.

BottomNavigationBar(
  showUnselectedLabels: true,
  ...
)

type

تحدد هذه الخاصية نوع BottomNavigationBar الذي يتم استخدامه. يمكن للمستخدم تخصيصه ليكون fixed أو shifting فقط. fixed يعني أن عدد العناصر في BottomNavigationBar ثابت ولا يمكن تغييره، في حين أن shifting يعني أن عدد العناصر قابل للتغيير ويمكن للمستخدم تغييره في وقت التشغيل.

BottomNavigationBar(
  type: BottomNavigationBarType.fixed,
  ...
)

elevation

يحدد هذا الخاصية مستوى العرض لـ BottomNavigationBar.

BottomNavigationBar(
  elevation: 8.0,
  ...
)

مثال على استخدام BottomNavigationBar في فلاتر

هذا مثال كامل على كيفية استخدام BottomNavigationBar في Flutter:

import 'package:flutter/material.dart';

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

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

class _MyAppState extends State<MyApp> {
  int _currentIndex = 0;
  final List<Widget> _children = [
    PageOne(),
    PageTwo(),
    PageThree(),
  ];

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Bottom Navigation Bar Example'),
        ),
        body: _children[_currentIndex],
        bottomNavigationBar: BottomNavigationBar(
          currentIndex: _currentIndex,
          onTap: onTabTapped,
          items: [
            const BottomNavigationBarItem(
              icon: Icon(Icons.home),
              label: 'Page One',
            ),
            const BottomNavigationBarItem(
              icon: Icon(Icons.mail),
              label: 'Page Two',
            ),
            const BottomNavigationBarItem(
              icon: Icon(Icons.person),
              label: 'Page Three',
            ),
          ],
        ),
      ),
    );
  }

  void onTabTapped(int index) {
    setState(() {
      _currentIndex = index;
    });
  }
}

class PageOne extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page One'),
    );
  }
}

class PageTwo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page Two'),
    );
  }
}

class PageThree extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page Three'),
    );
  }
}
مثال على استخدام BottomNavigationBar في فلاتر
مثال على استخدام BottomNavigationBar في فلاتر

هذا المثال يوضح كيفية استخدام BottomNavigationBar للتنقل بين عدة صفحات في تطبيق Flutter.

تبدأ الشاشة الرئيسية بإنشاء كائن BottomNavigationBar مع ثلاثة عناصر، ويتم تمثيل كل عنصر بـ BottomNavigationBarItem. تم استخدام const لتحسين الأداء لأن العناصر لا تتغير.

bottomNavigationBar: BottomNavigationBar(
  currentIndex: _currentIndex,
  onTap: onTabTapped,
  items: [
    const BottomNavigationBarItem(
      icon: Icon(Icons.home),
      label: 'Page One',
    ),
    const BottomNavigationBarItem(
      icon: Icon(Icons.mail),
      label: 'Page Two',
    ),
    const BottomNavigationBarItem(
      icon: Icon(Icons.person),
      label: 'Page Three',
    ),
  ],
),

عند النقر على عنصر في BottomNavigationBar، يتم استدعاء دالة onTabTapped ويتم تحديث الحالة الداخلية للـ _currentIndex.

void onTabTapped(int index) {
  setState(() {
    _currentIndex = index;
  });
}

تم إنشاء قائمة _children التي تحتوي على الصفحات التي يتم تمثيلها بواسطة كائنات StatelessWidget.

final List<Widget> _children = [
  PageOne(),
  PageTwo(),
  PageThree(),
];

يتم عرض الصفحة الحالية باستخدام _children[_currentIndex] في body.

body: _children[_currentIndex],

تم تعريف كل صفحة باستخدام StatelessWidget وتم تمثيلها بنص في المنتصف.

class PageOne extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page One'),
    );
  }
}

class PageTwo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page Two'),
    );
  }
}

class PageThree extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Center(
      child: Text('Page Three'),
    );
  }
}

باستخدام هذا المثال، يتم تمثيل BottomNavigationBar وعرض صفحات مختلفة عند النقر على عناصر مختلفة في BottomNavigationBar.

“اقرأ أيضاً: شرح استخدام ويدجت InkWell في فلاتر“


BottomNavigationBar هو عنصر واجهة المستخدم المهم في Flutter ويستخدم على نطاق واسع في إنشاء تطبيقات الهاتف المحمول والويب. يتيح BottomNavigationBar للمستخدمين تحديد عنفصل من بين عدة عناصر بسهولة. في هذه المقالة، تم شرح جميع خصائص BottomNavigationBar في Flutter بالتفصيل. يمكن للمستخدم تخصيص BottomNavigationBar وفقًا لمتطلبات التطبيق الخاص به.

Arab Flutter Community 🚀

انضم إلى مجتمع Arab Flutter
شارك هذا المقال
فيسبوك تويتر Whatsapp Whatsapp لينكد ان تلغرام نسخ الرابط
Avatar of عبدالله يوسف
بواسطة عبدالله يوسف Founder and CEO at ArabFlutter
تابع:
أنا عبدالله يوسف، مهندس مصري ومؤسس موقع عرب فلاتر، ملهم بشغف التكنولوجيا والإبداع. كمصمم مواقع ومبرمج تطبيقات موبايل باستخدام Flutter، أستمتع بخلق عوالم رقمية فريدة ومبتكرة. تتجلى مواهبي في تصميم وتطوير واجهات مستخدم تفاعلية، حيث يمزج الجانب الجمالي بالدقة الهندسية. ما يميزني هو إلمامي الواسع بتقنيات البرمجة والتصميم، ومقدرتي على تطوير تطبيقات متنوعة عبر منصات مختلفة. أعتبر نفسي مبدعًا وملتزمًا، حيث أسعى دائمًا لتحقيق تحسين مستمر في مهاراتي وتقنياتي. أستمتع بتحديات العمل الجماعي وأؤمن بأهمية الابتكار والتطور. بفضل إبداعي والتزامي، أسعى لتقديم حلول فعّالة تلبي توقعات العملاء وتفوق عن المألوف.
اترك تعليقا اترك تعليقا

اترك تعليقاً إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials
طريقة انشاء المجلدات باستخدام Dart
طريقة انشاء المجلدات باستخدام كود Dart تلقائيًا
Tutorials

مقالات ذات الصلة

اطلع على المزيد من المقالات المتعلقة بهذا الموضوع!
شرح استخدام ThemeData في فلاتر
Widgets

شرح استخدام ThemeData في فلاتر

37 2
شرح استخدام ويدجت SingleChildScrollView في فلاتر
Widgets

شرح استخدام SingleChildScrollView في فلاتر

26 1
شرح استخدام ويدجت WillPopScope في فلاتر
Widgets

شرح استخدام ويدجت WillPopScope في فلاتر

19 1
شرح استخدام ويدجت RichText في فلاتر 
Widgets

شرح استخدام ويدجت RichText في فلاتر 

20
شرح استخدام ويدجت TextButton في فلاتر
Widgets

شرح استخدام ويدجت TextButton في فلاتر

20
شرح استخدام ويدجت OutlinedButton في فلاتر
Widgets

شرح استخدام ويدجت OutlinedButton في فلاتر

28 1
أظهر المزيد
شعار موقع عرب فلاتر شعار موقع عرب فلاتر

About US

Quick Links

  • خدماتنا
  • من نحن
  • اتصل بنا
  • اتفاقية استخدام
  • سياسة الخصوصية
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
adbanner
تم اكتشاف مانع إعلانات
مرحبًا، يرجى إيقاف مانع الإعلانات. الإعلانات تُساهم في دعم موقعنا وتغطية جزء من تكاليف الاستضافة وتطوير المحتوى. شكرًا لتفهمك ودعمك.
Okay, I'll Whitelist
Welcome Back!

Sign in to your account

هل نسيت كلمة المرور؟