GridLayout
GridLayout برای اولین بار در ویرایش ۴٫۰ اندروید ارائه شد. layout نام برده به شما این امکان را می دهد تا فضای جاری را خانه بندی کنید و هر view می تواند یک یا چند خانه را اشغال کند. در واقع GridLayout قالب را مانند یک جدول به خانه، سطر و ستون تقسیم بندی می کند.
به وسیله ی این layout manager شما می توانید دقیقا تعیین کنید هر View چند ستون را به خود تخصیص دهد، در کدام سطر و ستون قرار گیرد و در نهایت چند سطر و ستون را اشغال کند. اگر خودتان به صورت صریح مشخص نکنید، در آن صورت GridLayout مقادیر پیش فرض را تخصیص می دهد. برای مثال، به هر view یک ستون و یک سطر اختصاص می یابد و محل view نیز به ترتیبی که در کد تعریف کردید مشخص می شود.
فایل XML زیر یک قالب با GridLayout تعریف می کند.
<?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android="http://schemas.android.com/apk/res/andro android:id="@+id/GridLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:columnCount="4" android:useDefaultMargins="true" > <TextView android:layout_column="0" android:layout_columnSpan="3" android:layout_gravity="center_horizontal" android:layout_marginTop="40dp" android:layout_row="0" android:text="User Credentials" android:textSize="32dip" /> <TextView android:layout_column="0" android:layout_gravity="right" android:layout_row="1" android:text="User Name: " > </TextView> <EditText android:id="@+id/input1" android:layout_column="1" android:layout_columnSpan="2" android:layout_row="1" android:ems="10" /> <TextView android:layout_column="0" android:layout_gravity="right" android:layout_row="2" android:text="Password: " > </TextView> <EditText android:id="@+id/input2" android:layout_column="1" android:layout_columnSpan="2" android:layout_row="2" android:inputType="textPassword" android:ems="8" /> <Button android:id="@+id/button1" android:layout_column="2" android:layout_row="3" android:text="Login" /> </GridLayout>
این کد ظاهری مشابه آنچه در تصویر زیر مشاهده می کنید را تعریف می کند.
ScrollView
گاهی لازم است تمامی view ها را در UI به نمایش بگذارید، حتی اگر فضای کافی برای نمایش آن ها وجود نداشته باشد. در صورتی که view بیش از حد بزرگ باشد، آنگاه ScrollView یک نوار پیمایش به صفحه اضافه نموده و به شما امکان می دهد به وسیله ی آن کل محتوا یا المان مورد نظر را (با کشیدن نوار به سمت چپ یا راست) در نمایشگر مشاهده نمایید. لازم به ذکر است که ScrollView یا HorizontalScrollView هیچ یک layout manager محسوب نمی شوند، بلکه خود می توانند یک view میزبان باشند و آن view تعدادی فرزند در خود داشته باشد.
در زیر یک فایل XML مشاهده می کنید که در آن از ( ScrollView جهت نمایش کل محتوای صفحه با نوار پیمایش) استفاده شده است.
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" android:orientation="vertical" > <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="8dip" android:paddingRight="8dip" android:paddingTop="8dip" android:text="This is a header" android:textAppearance="?android:attr/textAppearanceLarge" > </TextView> </ScrollView>
کل صفحه را در بر گیرد ScrollView سبب می شود که android:fillViewport=”true” خصیصه ی
حتی اگر المان ها کوچکتر از کل صفحه باشند و اساسا نیازی به نوار پیمایش وجود نداشته باشد
امیدواریم آموزش GridLayout و ScrollView در اندروید نیز برای شما مفید واقع شده باشد و ادامه آموزش برنامه نویسی اندروید رو دنبال کنید . برای مطالعه پستها بیشتر ، ما را در مدرسه کدنویسی تلگرام و یا در تی جوان اینستاگرام دنبال کنید.
نظراتتون رو زیر همین پست با ما به اشتراک بگذارید.