ظاهر صفحه نمایش با ViewGroup و View
View Group ها در واقع روشهایی برای قرار دادن اشیاء بر روی صفحه نمایش را در اختیار ما قرار میدهند. کنترل صفحه نمایش در اندروید استودیو توسط ViewGroup و View صورت میپذیرد و در این درس به بررسی رایجترین انواع View پرداختهایم.
فهرست مطالب آموزش
فایل لایوت XML
همانطور که قبلاً دیدید، یک فایل لایوت XML ظاهر یک صفحه نمایش اندروید را توصیف میکند. هر عنصر در فایل XML نماینده یک کلاس جاوا است، که یا بخشی از هسته Android SDK میشود و یا بخشی از کتابخانههای پشتیبان که با SDK دریافت شدن و در زمان اجرا کاربر، صفحه نمایش لایوت مربوطه را میبیند. اینجا نشان دادم که عناصر XML چطور با کلاسهای جاوا مرتبط میشوند.
کنترلرهای ویژوالی، View های جاوا
تمامی عناصر بصری در کد جاوا به عنوان زیر کلاس، کلاس ویو و یا خود زیر کلاس شرح داده میشوند.
کلاس ویو در پکیج android .view قرار دارد و تعداد زیادی زیرکلاس یا به لاتین subclasses دارد.
کلاس Text View در فایل لایوت با عنصر XML، Text View نشان داده میشود، و در زمان اجرا، XML به عنوان یک درخواست برای ساخت یک نمونه از کلاس جاوا توصیف و ترجمه میشود، و به اکتیویتی اضافه میشود.
کلاس Text View یک عضو پکیج android. Widget است. و این زنجیره همینطور ادامه دارد. برای مثال، یک Button یا دکمه یک نمونه از android .widget.Button است که زیرکلاس Text View محسوب میشود.
همچنین کلاس و component دیگری وجود دارد با نام Compound Button، که زیر کلاس Button است. به عنوان یک توسعه دهنده جاوا، این مهم است که این زنجیرهها و قابلیتهای هر component را بشناسید و بدانید که کجا تعریف میشوند.
زنجیره View در اندروید استودیو
هر جزء بصری که در یک صفحه نمایش استفاده میکنید یک زنجیره مثل این است و تابعیت آن هم شبیه این میباشد و میتوانید درباره زنجیره جاوا خاص آن از API docsجاوا اطلاعات کسب کنید. یک View Group نیز یک زیر کلاس ویو است. یکبار دیگر، از بالا این زنجیره شروع میکنم، جایی که یک کلاس ویو به عنوان super classدارید و View Group به عنوان subclass زیر آن است.
کلاس View Group یک عضو پکیج android.widget است و تعداد زیادی زیر کلاس دارد، مثلLinear Layout, AbsoluteLayout, RelativeLayout و غیره.
View Group ها به منزله container لایوتها
اینجا میگویم که این View Group ها چه کار میکنند.
از لحاظ عملکردی، آنها لایوتهای container هستند، که روشهایی برای قرار دادن اشیاء روی صفحه نمایش در اختیار شما میگذارند.
Linear Layout یک container است که اشیاء را به صورت عمودی یا افقی قرار میدهد، بسته به اینکه ویژگی orientation یا جهت آنرا چه بگذاریم.
در یک Relative Layout اشیاء به صورتی کنار هم قرار میگیرند که قیدهایی نسبت به هم دارند. مثلاً یک شیء در زیر یا بالا یا چپ و یا راست شیء دیگر قرار میگیرد.
یک Grid View یک گرید دو بعدی قابل مرور و پیشرونده است، و یک List View یک لیست عمودی آیتمهایی است که میتوانیم در صورت زیاد بودن آیتمها این لیست را روی صفحه نمایش بالا و پایین ببریم.
و اشیاء زیاد دیگری مثل Absolute Layout, DrawerLayout و غیره وجود دارند.
کتابخانه پشتیبان Android Studio
و در اندروید استودیو، خواهید دید که کتابخانه پشتیبان که اجزا یا component هایی برای طراحی دارد مثل Coordinator Layout و App BarLayout، و اینها برای ساخت قالبهای پایه برای برنامهها، حیاتی هستند. پس یکبار دیگر، هرکدام از این component ها بعنوان یک کلاس جاوا اجرا شدند، البته میتوانید بعداً این component ها را با تعریف XML یا کد جاوا به لایوت خود اضافه کنید.