بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

چطور لایه رو طراحی کنم که روی گوشی های مختلف یه جور نمایش داده بشه؟؟؟؟؟

مدیریت گفتگو
mosy 6 سال پیش
آخرین تغییر: 6 سال پیش

دو تا سوال دارم کسی میتونه پاسخ بده ممنون میشم، در اندروید استدیو 2.1.2

چطور لایه رو طراحی کنم که روی گوشی های مختلف یه جور نمایش داده بشه، و در رزولیشن های مختلف بهم ریخته نشه؟؟؟؟؟

با توجه به زبان گوشی برنامه هنگام اجرا به صورت راست چین و چپ چین تغییر میکنه، چطور فیکسش کنم که روی دو تا گوشی همونجور که طراحی کردم نشون بده؟؟؟؟؟؟

نظرات

ChookD1 6 سال پیش
بایه لایه ها رو طبق استاندردهاش طراحی کنید. یا میتونید به لایه ها وزن بدید. اینطوری خودشو حفظ میکنه
dev.amir 6 سال پیش
برای راست به چپ و برعکس میتونید در لایه اصلی خاصیت layoutDirection رو RTL OR LTR تنظیم کنید.
hasan20n 6 سال پیش
دوست گرامی حدالامکان از لینیرلیوت برای قسمت های مختلف صفحه استفاده کنید و ی مورد خیلی مهم همیشه سعی کن از اسکرول ویو تو لایه هات استفاده کنی تا تو سایزهای کوچیک بشه اسکرول کرد.
ChookD1 6 سال پیش
برای فیکس کردن راست چین شدن و چپ چین شدن ، من برای خودم بصورت شخصی یک اسنیپ درج کرده بودم که بخاطر ساده بودن این مطلب ، این اسنیپ بصورت عمومی نگذاشته بودم و بصورت شخصی ازش استفاده میکردم. اما برای شما در این لحظه بصورت عمومی منتشر شده که میتونید اون رو توی لینک مقابل مشاده بکنید. لینک

پاسخ‌ها 4


سلام.

باید برای هر سایز گوشی لایه موردنظرتون را طراحی کنید. گوشی ها توی 4 سایز هستن. اینجوری خیلی برای طراحی دستتون بازه.

عکس بخش لایه ها را براتون میذارم که بهتر متوجه بشین.

نظرات

hasan20n 6 سال پیش

برای اینکار هم میتونی به layout هات از قسمت اتربیوت layoutDirection استفاده کنی بطوریکه اگر مقدارشو برابر rtl بذاری میشه راست به چپ (برای اپهای فارسی) و اگه ltr میشه چپ به راست (برای اپهای انگلیسی)

مثلا این مثالو ببینید

<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layoutDirection="rtl"
android:id="@+id/drawer_layout"
android:fitsSystemWindows = "true"
tools:openDrawer = "start">



اگر از استایل استفاده میکنید همین موردم میتونید داخل استایل تعریف کنید

<style name="layoutDirection">
<item name="android:layoutDirection">rtl</item>
</style>

نظرات

jabi 6 سال پیش

برای این کار یک کتابخانه بسیار خوب هست که تمامی سایزهای مختلف بیشتر گوشی ها رو داره. شما میتونید از اون استفاده کنید. لینکشو میزارم در ادامه

Link to SDP LIBRARY

 

نظرات

Mohammad 6 سال پیش

از این کد در متد ()onCreate اکتیویتی استفاده کنید :

Configuration configuration = getResources().getConfiguration();
configuration.setLayoutDirection(Locale.ENGLISH);
getResources().updateConfiguration(configuration, getResources().getDisplayMetrics());

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .