ویجت MaterialApp امکانات گسترده ای را در رابطه با طراحی Material ارائه می دهد . این ویجت با افزودن قابلیت های خاص مانند AnimatedTheme ، ThemeData و GridPaper باعث سرعت بخشیدن در مدیریت تم برنامه می گردد . قطعه کد زیر نمونه ای از پیاده سازی این ویجت را نمایش می دهد : MaterialApp( theme: […]ادامه مطلب .
ویجت Directionality جهت مدیریت جهت نمایش عناصر صفحه به کار می آید . اگر تصمیم داریم صفحه خود را راست چین نمایید ، باید از ویجت Directionality استفاده کنید . این ویجت با استفاده از خصوصیت textDirection خود نسبت به تنظیم جهت نمایش اقدام می کند . جهت نمایش تمام عناصر صفحه به صورت پیش […]ادامه مطلب .
در این پروژه شما روش کار با StatefulWidget و StatelessWidget و همچنین روش کار با ویجت های MaterialApp , Directionality , TabBar , TabBarView , NestedScrollView , SliverAppBar , PopupMenuButton را مشاهده خواهید کرد . شکل ظاهری خروجی کار ، شبیه اپلیکیشن WhatsApp است ، با چهار تب در بالا پنجره قابلیت جستجو نمایش منوی […]ادامه مطلب .
ویجت SliverAppBar جایگزین خصوصیت AppBar ویجت Scaffold می باشد و زمانی که شما از ویجت NestedScrollView جهت پیاده سازی پیمایش تودرتو استفاده کرده است ، کاربرد دارد . در واقع توسط این ویجت است که ویجت NestedScrollView می تواند نسبت به مخفی سازی AppBar در پیمایش های عمودی اقدام نماید . قطعه کد زیر نمونه […]ادامه مطلب .
ویجت NestedScrollView جهت پیاده سازی قابلیت پیمایش تودرتو استفاده می شود و پرکاربردترین حالت استفاده از آن مربوط به زمانی است که شما مایل هستید در صورت اسکرول عمودی ، AppBar برنامه مخفی شده و فقط قسمت TabBar نمایش داده شود . این در حالی است که ممکن است هم زمان شما از یک ListView […]ادامه مطلب .
با انتخاب هر یک از تب های نمایش داده شده توسط ویجت TabBar ، شما نیاز دارید تا محتویات صفحه را تغییر دهید ، در این حالت از ویجت TabBarView استفاده می نمایید در واقع ویجت TabBarView جهت نمایش نمای صفحه ای که ویجت مربوط به برگه انتخاب شده فعلی را نشان می دهد ، به […]ادامه مطلب .
از ویجت TabBar جهت دسترسی سریع به فرم های پر کاربرد برنامه استفاده می شود . این ویجت می تواند تعدادی تب را ایجاد و مدیریت نماید . به عنوان نمونه در قطعه کد زیر با استفاده از خصوصیت bottom ویجت Scaffold و استفاده از یک TabBar نسبت به نمایش ۴ تب در بالای فرم […]ادامه مطلب .
کلاس DecorationImage می تواند توسط خصوصیت image خود یک عکس را توسط کلاس NetworkImage دریافت نموده و سپس توسط خصوصیت fit خود ، سایز عکس را تغییر داده و به عنوان مثال با ورودی BoxFit.cover به اندازه کادر عکس در آورد یا توسط خصوصیت repeat خود و با دریافت ImageRepeat.repeat عکس را تکرار نماید . […]ادامه مطلب .
در اکثر مواقع ، جهت تعیین موقعیت ویجت ها در ویجت Stack از خصوصیت alignment: Alignment.bottomRight استفاده می شود ولی در صورتی که مایلید موقعیت دهی انعطاف پذیرتری داشته باشید می توانید از کلاس Positioned نیز استفاده نمایید . این کلاس با خصوصیت های top , right , button , left به شما این امکان […]ادامه مطلب .
ویجت Padding باعث ایجاد یک فضای خالی از داخل می گردد . جهت ایجاد فضای خالی از بیرون یا از داخل ، شما می توانید از ویجت Container نیز استفاده نمایید و این دو اصلا هیچ فرقی با هم ندارند ، در واقع ویجت Container نیز با فراخوانی ویجت Padding این فضای خالی را ایجاد […]ادامه مطلب .
برای نمایش عکس گرد ویجت CircleAvatar وجود دارد ، ولی در صورتی که مایلید میزان padding و margin عکس به نسبت اطراف را نیز کنترل نمایید می توانید از روش زیر استفاده نمایید : Container( width: 40.0, height: 40.0, margin: EdgeInsets.symmetric(horizontal: 5.0), padding: EdgeInsets.all(2.0), decoration: BoxDecoration( shape: BoxShape.circle, image: DecorationImage( image: NetworkImage('https://javareshkian.ir/wp-content/uploads/2020/04/fakhr-Small-100x100.png'), fit: BoxFit.cover, ), ), ), […]ادامه مطلب .
از ویجت PopupMenuButton ، جهت نمایش یک منوی بازشونده استفاده می شود . به عنوان مثال در خصوصیت action ویجت Scaffold می توانید از این ویجت استفاده نمایید . قطعه کد زیر نمونه ای از پیاده سازی این ویجت را نمایش می دهد : actions: <Widget>[ IconButton( icon: Icon(Icons.search), onPressed: () { print('search click'); }, […]ادامه مطلب .