Layout ها در اندروید
Layout ها در اندروید
آموزش ویدیویی این قسمت با زبان فارسی و با کیفیت بالا اضافه شد جهت سرعت بخشیدن به امر یادگیری خود حتما از لینک زیر خریداری بکنید
View ها قسمت اصلی ، رابط کاربری یک برنامه ی اندرویدی هستند که از کلاس View مشتق میشوند ، به اصطلاح دیگر ، View ها آبجکت هایی هستند که صفحه ی نمایش مستطیلی اندروید را اشغال میکنند ، View ها کلاس اصلی ویجت هایی هستند که جزو اجزای اصلی رابط کاربری برنامه های اندرویدی میباشد ویجت هایی مانند دکمه ها ، فیلد های متنی و … .
ViewGroup یک زیر کلاس از کلاس اصلی View هست . ViewGroup ها ظرف های غیر قابل مشاهده ای را جهت نگهداری از دیگر View ها یا حتی ViewGroup ها فراهم میکند .
در زیر سه لایه از روابط کاربری اندروید که همگی زیرکلاس ViewGroup هستند آمده است که برای ساخت رابط کاربری برنامه مورد استفاده قرار میگیرند .
شما میتوانید این ویوها رو توسط شی View/ViewGroup بصورت run time بسازید یا اینکه بصورت دستی درون پوشه ی res/layout یک فایل xml مثل main_layout.xml بسازید.

layout در اندروید
در این آموزش ، اساس کار ما ، در طراحی روابط کاربری برنامه های اندروید با XML خواهد بود. هر فایل Layout میتواند شامل هر ویجت از نوع View مانند دکمه ها ، فیلدهای متنی ، label ها ، و … باشد . در زیر یک نمونه ی ساده از ساخت یک فایل layout با XML آمده است :
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a TextView" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a Button" /> <!-- More GUI components go here --> </LinearLayout>
هم اکنون فایل layout شما ساخته شد ، حالا شما میتوانید این layout را به یک اکتیویتی اختصاص دهید . برای این کار درون اکتیویتی و متد Activity.onCreate() کدهای زیر را بنویسید :
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }
انواع Layout ها در اندروید :
layout ها انواع متعددی دارد که توسط اندروید برای شما فراهم شده است و میتوانید بسته به نیاز خود استفاده کنید و توضحیات آنها در جدول زیر آمده است :
شماره | نام و توضیحات |
۱ | Linear Layout یکی از انواع view group ها هست که المان های درون خود را بصورت خطی میچیند ،در دو حالت بصورت افقی یا عمودی |
۲ | Relative Layout یک نوع view group هست که المان های درون آن وابسته به هم هستند و مکان قرار گیری آنها به نسبت دیگر المان هاست |
۳ | Table Layout یک نوع view group هست که مانند جدول در ستون ها و سطر ها ، المان های درونی خود را به نمایش میگذارد |
۴ | Absolute Layout توسط این view group میتوانید نقاط قرار گیری المان های درونی ان را دقیقا مشخص کنید |
۵ | Frame Layout قسمتی از صفحه هست که روی یک layout دیگر قرار میگرد و مانند فریمی عمل میکند و شما میتوانید المان های خود را در آن قسمت خاص نشان دهید |
۶ | List View توسط این view group آیتم ها درون یک لیست که قابلیت اسکرول دارد قرار میگرند |
۷ | Grid View آیتم درون این ViewGroup بصورت دو بعدی درون grid به نمایش گذاشته میشوند |
خصوصیات Layout ها در اندروید :
هر Layout خاصیت های ویژه ی خود را دارد که تنظیمات و خصوصیت آنها را جهت نمایش مشخص میکند . تعدادی از این خصوصیت ها در همه ی Layout ها یکسان هست و رایج هستند . در جدول زیر این خصوصیت های رایج برای شما آمده است :
ویژگی | توضیحات |
android:id | مشخص کننده ی ID هر View که منحصر به فرد نیز میباشد |
android:layout_width | مشخص کننده ی مقدار عرض layout هست |
android:layout_height | مشخص کننده ی مقدار ارتفاع layout میباشد |
android:layout_marginTop | فضای خالی اضافی در بالای layout هست که از آیتم های بالایی خود فاصله میگیرد |
android:layout_marginBottom | فضای خالی اضافی در زیر layout جهت فاصله گرفتن از هر آیتمی که در پایین تر از خود layout هست |
android:layout_marginLeft | فضای خالی اضافی در سمت چپ layout جهت فاصله گرفتن از هر آیتمی که در چپ layout هست |
android:layout_marginRight | فضای خالی اضافی در سمت راست layout جهت فاصله گرفتن از هر آیتمی که در راست layout هست |
android:layout_gravity | مکان قرار گیری View هایی را مشخص میکند که در زیر مجموعه ی layout جاری قرار دارند |
android:layout_weight | مشخص میکند که چقدر از فضای خالی اضافی به layout اختصاص داده خواهد شد |
android:layout_x | مختصات X را برای layout مشخص میکند |
android:layout_y | مختصات Y را برای layout مشخص میکند |
android:paddingLeft | مقدار حاشیه از چپ را مشخص میکند |
android:paddingRight | حاشیه از راست را مشخص میکند |
android:paddingTop | حاشیه layout از بالا را مشخص میکند |
android:paddingBottom | حاشیه ی Layout از پایین را مشخص میکند |

سلام سایت خوبی دارید . به سایت ما سر بزنید. بک لینک رایگان میدیم site.ir24.org