12- Linear Layout
آدرس مطلب اصلی: http://developer.android.com/guide/topics/ui/layout/linear.html
Linear layout نحوه نمایش گروهی از
اطلاعات و نماها(view) است که همه ی فرزندان(در اینجا نمایی به
اندازه ی صفحه ی در نظر گرفته شده برای نمایش اطلاعات را
پدر، و هر تکه ای از متن که مستقل از قسمت دیگر در داخل نمای
پدر قرار دارد را فرزند در نظر خواهیم گرفت.) را تنها در یک
راستا(عمودی و یا افقی) نمایش می دهد.
یعنی یک دسته بندی از فرزندان به طور عمودی و
یا افقی ارائه می دهد. با ویژگی android:orientation
می توان جهت layout کردن مطالب را مشخص کرد.
همه ی فرزندان در Linear layout یکی پس از دیگری (پشت سر هم)روی هم چیده شده اند، به طوری که یک لیست عمودی تنها یک فرزند در هر سطر خواهد داشت و میزان گستردگی آنها اهمیتی ندارد. و یک لیست افقی تنها یک ردیف بلند خواهد بود(ارتفاع بلندترین فرزند به همراه لایه گذاری). یک Linear layout به حاشیه و فاصله ی بین فرزندان و محل قرارگیری مرکز ثقل (راست، وسط، و هم ترازی چپ) هر فرزند توجه می کند.
در اندروید با Linear
layout و
ویژگی android:layout_weight
می
توان برای هر قسمت یک وزن جدا و انحصاری در نظر گرفت(هر قسمت
وزن مشخص خود را داشته باشد.). این ویژگی در اصطلاح یک
درجه اهمیت به هر نما در فضا اختصاص می دهد تا مشخص کند که چه مقدار
فضا توسط این نما در صفحه ی نمایش اشغال شود. مقدار وزنی
بزرگتر می تواند برای پر کردن هر فضای باقیمانده در
نمایش نمای پدر، گسترش پیدا کند. نمای فرزند می
تواند برای خود یک مقدار وزن مشخص کند، و سپس هر فضای
باقی مانده در گروه نماها به فرزندان به نسبت وزن اعلامی آنها اختصاص
داده می شود. وزن به طور پیش فرض صفر است.
برای مثال اگر سه رشته متن وجود دارد و دوتا از آنها اعلام وزن یک می کنند، در حالی که به دیگران هیچ وزنی تعلق نگرفته باشد، زمینه متن سوم (متن بدون وزن) رشد نخواهد کرد و تنها منطقه های مورد نیاز برای محتوای خود را اشغال خواهد کرد. و دو فضای دیگر به اندازه ای گسترش میابند تا تمام فضای باقی مانده بعد از اندازه گیری و اختصاص فضا به سه رشته را پر کنند. اگر زمینه سوم وزن دو به جای صفر بگیرد، این از دوتای دیگر که وزن یک داشتند مهم تر خواهد بود، و بنابراین نیمی از مجموع فضای باقیمانده به آن تعلق می گیرد، در حالی که بقیه فضای باقیمانده به دوتایی که وزن یک داشتند به طور برابر اختصاص میابد.
جزئیات درباره ی
ویژگی های در دسترس هر نمای فرزند با LinearLayout
قابل
مشاهده در LinearLayout.LayoutParams
است.
وزن دادن به فرزندان به صورت برابر
برای ایجاد یک LinearLayout
که
در تمام فرزندان وزن مشابه و برابری برای در
اختیار گرفتن فضا در صفحه
نمایش داشته
باشند، برای یک
Layout عمودی
ویژگی
android:layout_height
را برای هر نما بر روی
"0dp"،و یا
برای یک
Layout
افقی ویژگی
android:layout_width
را
برای هر نما بر
روی
"0dp" ، و
سپس
ویژگی
android:layout_weight
نماها را بر روی
"1"
تنظیم
کنید.
- ۹۳/۰۳/۰۲
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.