Persian Software Engineers – Telegram
Persian Software Engineers
1.9K subscribers
353 photos
14 videos
84 files
303 links
تجربیات شخصی یک مهندس نرم افزار در آلمان‌.
کانال یوتیوب:
https://www.youtube.com/@Dev_Germany
ادمین کانال :
@mohamad_germany
Download Telegram
یکی از دکمه های خود را انتخاب کنید. مثلا میخواهیم داخل کد بگیم که دکمه وسط راستای عمودی قرار بگیرد. این صفت را به آن اضافه میکنیم:
android:layout_gravity="center"
که همین gravity میتونه به سمت راست یا چپ صفحه هم تعلق بگیره.
یعنی right یا left
Relative Layout
این Layout کاربرد بسیار زیادی دارد و خیلی مهم هست. ابزارهایی که گذاشتید را پاک کنید. وارد Text بشوید و layout خود را به RelativeLayout تغییر بدید
حالا به بخش دیزاین بروید و سعی کنید دکمه ای را در صفحه Drag کنید. حالا میبینید که هرجایی میتوانید بگذارید ابزارهایتان را.
حالا با attribute های مخصوص این layout اشنا میشویم. به بخش Text برگردید. مثلا اگر بخواهم دکمه اولی بالای layout و در وسط قراربگیرد طبق زیر کدش را میزنیم:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="NewButton"
android:id="@+id/button"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
/>
پس هروقت بخواهیم ابزارمان به یکی از لبه های بالا، پایین، راست یا چپ RelativeLayout امون بچسبد از یکی ازدستورات زیر استفاده میکنیم! :
layout_alignParentTop,
layout_alignParentBottom
layout_alignParentRight,
layout_alignParentLeft,
گر بخواهیم ابزارمان وسط راستای عمودی یا افقی که قرار دارد بیفتد، یا اینکه کاملا وسط RelativeLayout امان قرار بگیرد از یکی از صفتهای زیر استفاده میکنیم و آن را برابر true قرار میدهیم
layout_centerVertical,
layout_centerHorizontal,
layout_centerInParent
که البته حواسمان باید باشد بعضی از این صفتها باهم تداخل دارن مثلا اگر بگید layout_alignParentTop,
بعد از آن با استفاده از layout_centerInParent نمیتوانید ابزارتان را وسط layout بیارید. چون نمی شود ابزار هم به بالای layout قفل شده هم وسط آن قرار بگیرد.
خاصیت بعدی RelativeLayout این است که با استفاده از آن میتوانید ابزارها را نسبت به هم مکان¬دهی بکنید. یعنی مثلا بگید دکمه1 سمت راست دکمه2 قرار بگیرد. این برای دیزاین نرم¬افزار خیلی کاربردی هست چون که اگر برای مکان دادن به ابزارها از مختصات یا فاصله دادن های عددی مثلا بخواهید استفاده کنید خب داخل گوشی¬های مختلف دیزاینت شما بهم میخورد.
اما با دادن رابطه نسبی بین ابزارها میتوانید یک چیدمان ثابت در گوشی¬های موبایل با ابعاد مختلف داشته باشید.
به این ترتیب برای نسبت دادن موقعیت یک ابزار نسبت به ابزار دیگر از موارد زیر استفاده میشود
layout_toLeftOf,
layout_toRightOf,
layout_above,
layout_below
و توجه کنید این attribute چون نسبی به یک ابزار دیگر هست از شما id ابزاری که دارید به آن ارجاع میدهید را هم میخواهد. مثلا به ترتیب زیر دکمه دوم ()button1 را سمت راست دکمه اول قرار میدهم (button)
و اخرین مورد قرار دادن ابزاری در راستای لبه ی ابزار دیگر هست. مثلا فکر کنید میخواهید دکمه سوم(button2 ) در زیر دکمه دوم (button1) و در امتداد سمت راستش قرار بگیرد. کد آن بصورت زیر است:
پس به این ترتیب از روابط زیر میتوانید استفاده کنیدکه مانند روابط دسته قبل از شما id ابزاری که بهش ارجاع میدهید را هم میخواهد:
layout_alignLeft,
layout_alignRight,
layout_alignTop,
layout_alignBottom