این مقاله به همراه دیگر مقالات این مجموعه ۱۶ قسمتی، بر اساس آموزش ویدیویی در pluralsight به نام Android Fundamental : Layout تهیه شده است. تاریخ تولید این دوره ۲۰۱۹ است.
روند منبع فوق در فهرست و محتوای مقالات، بطور کلی حفظ شده است ولی در جزئیات یک ترجمه کلمه به کلمه نیست؛ نگارش فهرست و محتوا با افزودن و دخالت همراه بوده است.
بطور کلی هر جا حس شده توضیح بیشتر به درک مطلب کمک میکند دریغ نشده است.
لی اوت در اندروید ۱ : مفاهیم اولیه
لی اوت در اندروید ۲ : آشنایی با اتریبیوت های width و height
لی اوت در اندروید ۳ : آشنایی با اتریبیوت های margin و padding
لی اوت در اندروید ۴ : آشنایی با اتریبیوت gravity
لی اوت در اندروید ۵ : آشنایی با لی اوت های پایه (در حال خواندن این مقاله هستید)
لی اوت در اندروید ۶ : آشنایی با LinearLayout
لی اوت در اندروید ۷ : اتریبیوت weight
لی اوت در اندروید ۸ : آشنایی با FrameLayout
لی اوت در اندروید ۹ : آشنایی با RelativeLayout
لی اوت در اندروید ۱۰: آشنایی با CoordinateLayout
لی اوت در اندروید ۱۱ : آشنایی با ConstraintLayout
لی اوت در اندروید ۱۲ : آشنایی با Layout Inspector
لی اوت در اندروید ۱۳ : بهینه سازی رابط کاربری
لی اوت در اندروید ۱۴ : استفاده از تگ include
لی اوت در اندروید ۱۵ : استفاده از تگ merge
لی اوت در اندروید ۱۶ : استفاده از ViewStub
تا اینجای کار کمی با LinearLayout آشنا شده ایم. لی اوت های زیر مهمترین لی اوت های پایه هستند.
اینها از قدیمی ترین لی اوت ها هستند، به جز اینها لی اوت های قدیمی دیگری داریم که به ندرت استفاده میشوند.
به لی اوت ها ViewGroup هم میگویند. ویوگروپ یک کلاس مشتق شده از کلاس View است و به عنوان یک container یا بستر غیر قابل مشاهده برای المان های دیگر استفاده میشود و روی نحوه جاگذاری المان ها (ویوها یا کامپوننت ها) موثر است.
در حقیقت با تغییر خصوصیات لی اوت ها، شما میتوانید به جاگذاری مورد نظر خود در مورد ویوها برسید.
رایج ترین لی اوت LinearLayout است که تمام چیلدرن هایش (المان های داخلی) در یک ردیف پشت سر هم قرار میگیرند. حالا یا به شکل افقی و یا به شکلی عمودی. در دو مقاله آتی بطور کامل به LinearLayout و خصوصیاتش میپردازیم.
لی اوت دیگر FrameLayout است که زمانی باید به فکر استفاده از آن باشیم که چایلد ویوها قرار باشد روی همدیگر قرار گیرند. تصویر یک قاب همراه عکس آن را در نظر بگیرید؛ اگر قاب ما یک فایل png باشد که درون آن transparent است و عکس یک فایل دیگر باشد، اگر بخواهیم دو تصویر روی هم بیفتند به طوری که قاب، حاشیه عکس اصلی را فرا گیرد باید ابتدا المان عکس روی صفحه باشد و سپس المان قاب «روی آن اضافه شود». این «روی آن اضافه شدن» یعنی کاری از دست LinearLayout بر نمیآید. با FrameLayout به راحتی میتوان این موضوع را پیاده سازی کرد.
در بخش هشتم این مجموعه مقالات به FrameLayout خواهیم پرداخت.
اما RelativeLayout چیست؟ همانطور که از اسم این لی اوت مشخص است قرار گیری المان در این لی اوت به شکلی وابسته به المان های دیگر است. یعنی موقعیت مکانی المان ها نسبی است. با اینکه از این لی اوت به دلیل حضور لی اوت های جدید که بعدا معرفی میشوند کمتر استفاده میشود اما آشنایی با آن به عنوان یک لی اوت پایه و قدیمی به درک بهتر ساختار UI در اندروید کمک میکند.
در بخش نهم به شکلی کوتاه به این لی اوت خواهیم پرداخت.
ما لی اوت های قدیمی دیگری مثل GridLayout یا TableLayout داریم که به دلیل استفاده کم، در این مقالات به آن پرداخته نشده است. اما آشنایی با اصولی که در ادامه این مجموعه تحت لی اوت های مختلف معرفی میشوند به عنوان پیش زمینه برای لی اوت های دیگر قابل بسط و کاربردی است.
در دو مقاله به تفصیل به لی اوت های مهم و پرکاربرد CoordinateLayout و ConstraintLayout پرداخته ایم.
شما به کمک درک مفهوم لی اوت ها و تفاوت های آنها میتوانید یک رابط کاربری زیبا و با منطق درست بسازید.