کاربرد پکیج uuid در فلاتر

پکیجی برای تولید اعداد تصادفی

// Generate a v1 (time-based) id
uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'

// Generate a v4 (random) id
uuid.v4(); // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'

// Generate a v5 (namespace-name-sha1-based) id
uuid.v5(Uuid.NAMESPACE_URL, 'www.google.com'); // -> 'c74a196f-f19d-5ea9-bffd-a2742432fc9c'

https://pub.dev/packages/uuid

آشنایی به معماری BLOC در فلاتر-ترجمه ی داکیومنت

سلام به شما امیدوارم حالتون خوب باشه. امروز تصمیم گرفتم داکیومنت آشنایی پکیج bloc رو ترجمه کنم و بذارم خدمت شما. امیدوارم به دردتون بخوره

ادامه خواندن “آشنایی به معماری BLOC در فلاتر-ترجمه ی داکیومنت”

مدیریت state در فلاتر- ترجمه ی توضیحات سایت flutter.dev- بخش اول

سلام. راجع به state management خیلی مقالات هست اما چه مقاله و داکیومنتی بهتر از سایت فلاتر که خودش توضیح داده. من صرفا اومدم و ترجمش ترجمه کردم تا جاییکه سوادم یاری میکرد که حداقل کمکی بشه برا درک بهتر این مبحث تقریبا پیچیده. اگر جایی اشتباه ترجمه شده ممنون میشم اطلاع بدید تا اصلاحش کنم. نکته دیگه اینکه من فقط جاهایی که خودم لازمم بود رو ترجمه کردم پس ببخشید که بعضی جاها رفرنس میدم به سایت خود فلاتر.

ادامه خواندن “مدیریت state در فلاتر- ترجمه ی توضیحات سایت flutter.dev- بخش اول”

مهارت هایی که باید در فلاتر یاد بگیرید

سلام. امروز یه پست خوب راجع به مهارتهایی که باید در فلاتر یاد بگیریم دیدم. گفتم لینکشو بذارم شما هم استفاده کنید:
http://adfoc.us/55188881363609

حل مشکل تکرار بی پایان یک اجرا هنگام استفاده از setState در FutureBuilder و ListView.Builder در فلاتر

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

تو یکی از پروژه ها یه متغیر رو داخل یه FutureBuilder ( داخل ListViewBuilder هم همین مشکل وجود داره) یه مقدار جدید دادم بهش . یه BottomNavigationBar هم داشتم که یه ویجت Text قرار داده بودم وهمون متغیر رو داخلش قرار داده بودم. به شکل زیر:

class BasketBar extends StatefulWidget {
  @override
  _BasketBarState createState() => _BasketBarState();
}

class _BasketBarState extends State<BasketBar> {
  double? finalTotal;
...
@override
  Widget build(BuildContext context) {
    S().init(context);
    return Scaffold(
      appBar: buildAppBar(context),
      body: FutureBuilder<List<Data>>(
          future: getData,
          builder: (context, local) {
            if (local.hasData) {
                  ...
                  myVariable = local.data!.name;
                  ...
      bottomNavigationBar: Text(myVariable.toString()),

اما مقدار داخل bottomNavigationBar برای بار اول بروز نمیشد و null نشون میداد. و باید صفحه رو رفرش میکردم تا مقدار درست رو نشون بده. بنابراین از کد زیر استفاده کردم:

Future.delayed(Duration.zero, () {
                setState(() {
                  myVariable = local.data!.name;

                });
              });

با این کد، متغیر myVariable برای بار اول نشون داده شد اما انگار برنامه میفتاد رو دور تکرار و بی وقفه این setState اجرا میشد. بنابرین یه شرط اضافه کردم به این شکل:

if(myVariable == null)Future.delayed(Duration.zero, () {
                setState(() {
                  myVariable = local.data!.name;
                 });
              });

و مشکل حل شد!

اما قضیه از چه قرار بود؟

وقتی از setState استفاده میکنم ویجت build دوباره ساخته میشه و بنابراین فیچربیلدر هم دوباره ساخته میشه و این شرط :

Future.delayed(Duration.zero, () {
                setState(() {
                  myVariable = local.data!.name;
                 });
              });

دوباره تکرار میشه و مثل یه حلقه ی بی پایان ویجت ساخته میشه .

اما شرطی که اضافه کردیم فقط برای بار اول این کار رو انجام میده و تمام!!!

مفهوم null safety در زبان برنامه نویسی dart

سلام به شما دوستان عزیز.

پروژه رو باز کردم و sdk فلاتر رو روی ورژن 2 قرار دادم. و چی شد؟ بووووووووووم… یه عالمه ارور که باید اصلاحشون میکردم. بخاطر چی؟ مفهوم جدید null safety . که خیلی از پکیج ها هم بخاطرش ارور دادن.

خب طبیعتا برای اینکه ارور هارو رفع کنید باید با این مفهوم آشنا بشید که البته اولش شاید یکم گنگ به نظر بیاد اما با مطالعه اونها و انجامش روی پروژه قابل فهم تر میشه.

یه مقاله خیلی خوب براتون معرفی میکنم که خیلی خلاصه و مفید توضیح داده

روی این لیییییییییییینک کلیک کنید)click).

نوار پیمایش در Flutter

یه کتابخونه بهت معرفی میکنم بری لذت ببری

بعد از کلیک کردن روی لینک گزینه skipp سمت راست بالا کلیک کنید.

دانلود پکیج percent_indicator

حل ارورNoSuchMethodError (NoSuchMethodError: The method ‘*’ was called on null در فلاتر

جواب این مشکل در سایت stackoverflowهم جواب داده نشده(تا به این تاریخ) ولی هیچ ارور خاصی نیست.

شما یک کلاس تعریف کردید و همچنین داخلش constructor تعریف کردید اما اونجایی که کلاس رو صدا زدید متدهای ورودی رو صدا نزدید.

منبع:آچارکد AcharCode.ir

طراحی اپلیکیشن ریسپانسیو با Flutter

مقاله زیر رو بخونید کمکتون میکنه. شاید بعدا یه ویدیو ازطراحی یه اپلیکیشن ریسپانسیو گذاشتم براتون

Flutter responsive application

بروزرسانی: بعد از مطالعه ی لینک بالا حتما حتما مقاله Understanding constraints رو بخونید. با این روش میتونید به راحتی اپلیکیشن های ریسپانسیو درست کنید