تحسينات على أداء مشروع تريدبوك
Using Cached Network Image And Get For Navigation
لفهم جميع تفاصيل الدرس احرص على مشاهدة الدرس بشكل كامل على يوتيوب :
بداية أضف هذه المكتبات إلى ملف
dependencies:
cached_network_image: ^2.5.1
get: ^3.24.0
main :
الملف بعد التعديل
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';
import 'package:tradebook/login/welcomeScreen.dart';
import 'package:tradebook/providerData.dart';
void main() {
runApp(TradeBook());
}
class TradeBook extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return ChangeNotifierProvider<ProviderData>(
create: (context) => ProviderData(),
child: GetMaterialApp(
title: 'TradeBook',
theme: ThemeData(
primarySwatch: Colors.purple,
),
home: WelcomeScreen(),
),
);
}
}
كود الانتقال بين الشاشات باستخدام Get :
Get.to(() => HomeScreen());
مثال استخدام Cached Network Image if sectionsPage.dart
CachedNetworkImage(
imageUrl: document.data()['logoURL'],
placeholder: (context, url) => Center(
child: Text(' . . . '),
),
errorWidget: (context, url, error) => Text('!'),
imageBuilder: (context, imageProvider) => Container(
child: Column(
children: [
CircleAvatar(
radius: 60,
backgroundColor: Colors.white,
backgroundImage: imageProvider,
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
document.data()['nameAR'],
style: TextStyle(
fontSize: 22,
fontWeight: FontWeight.w700,
fontFamily: 'XB_Zar',
),
),
),
],
),
),
),
أسماء الإضافات التي في ال
Extensions
Rainbow Brackets
HighLightBracketPair
Make sure to start from first lesson on my channel
https://www.youtube.com/c/CodeWithAmmar
I’ll be happy to follow me on my all accounts :
Twitter: https://twitter.com/codewithammar/ Facebook: https://m.facebook.com/codewithammar/ Instagram: https://instagram.com/codewithammar/ Telegram: https://t.me/codewithammar/
Mobile Apps development instructor :
Ammar Awni