پژمان حاجی حیدری
پژمان حاجی حیدری
خواندن ۳ دقیقه·۵ سال پیش

ویجت 27 (SizedBox در فلاتر)

خوب دوستان عزیز بریم سراغ یکی از ویجت های جذاب فلاتر یعنی SizedBox

این ویجت اندازه های مشخصی را می گیره و در خیلی جاها قابل استفاده است

بریم سراغ کد نویسی ان از ابتدایی ترین مورد استفاده ان شروع میکنیم

import 'package:flutter/material.dart'; class BasicSizedBox extends StatelessWidget { //A box with a specified size @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text(&quotSizedBox Widget&quot)), //the sizedBox widget forces its child to have a specific width and/or height (if that widget permits that) //if it doesnt contain a child, it will size itself to the given width and height //can also use SizedBox.expand(), which stes with and height to infinity //or SizedBox.fromSize() which requires a Size class body: Center( child: SizedBox( height: 80.0, width: 80.0, //the container has no width or height, but the sizedbox widget forces it to its own width/height child: Container( color: Colors.red, ), ), ), ); } }

به این ویجت طول و عرض با اندازه ی 80 میدهیم به خروجی زیر دقت کنید

می تونیم کل صفحه باقی مانده را بدون سایز زنی نیز پوشش دهیم

SizedBox.expand( child: Card( child: Text('Hello World!'), color: Colors.yellowAccent, ), ),

می تونیم بین ویجت ها با دادن اندازه ی مشخص به این ویجت فاصله ایجاد کنیم

Column( children: <Widget>[ Icon(Icons.star, size: 50), const SizedBox(height: 100), Icon(Icons.star, size: 50), Icon(Icons.star, size: 50), ], ),

حتی می تونیم در یک حالت یک ویجت دلخواه را نشان دهیم در وضعیت دیگر ان را پنهان کنیم و فضای اشغال شده ان را با این ویجت جایگزین کنیم به کد زیر دقت کنید

Widget build(BuildContext context) { bool isVisible = ... return Scaffold( appBar: AppBar( title: Text('isVisible = $isVisible'), ), body: isVisible ? Icon(Icons.star, size: 150) : const SizedBox(), ); }

در وضعیتی که مقدار True باشه ویجت نشان داده میشه و در وضعیتی که Flase است به جای ان از SizedBox از فضای موجود استفاده می کنیم

امیدوارم از این اموزش نهایت لذت را برده باشید

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

نوشته شده توسط پژمان حاجی حیدری یک دوستدار فلاتر

ایدی کانال برای دسترسی به تمام اموزش ها @Learnpg
لینک کانال https://t.me/joinchat/AAAAAFDR-mppe-ciC6X1Qg
ایدی تلگرام بنده @pejmanprogrammer


برنامه نویسی
یکی از عاشقان فلاتر و تلاش برای ایجاد جامعه فلاتر ایران برای دسترسی سریع و اسان به مطالب برنامه نویسی کانال تلگرام بنده را با ایدی Learnpg را دنبال کنید
شاید از این پست‌ها خوشتان بیاید