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

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

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

با سلام دوستان من مشکلی که دارم اینه که وقتی صفحه خودم رو می چینم وقتی زبان گوشی عوض میشه این چینش به هم می خوره من چه باید بکنم که در هر زبانی چینش عناصر به همان شکلی باشه که زمان برنامه نویسی انجام میدیم (عکس نوشته صرفا تمرینه به اشتباهات موجود توجه نکنید)

نظرات

RouhollahMz 9 سال پیش
سلام/ این مشکل بخاطر ساپورت زبان فارسی در +API17 بوجود میاد، برای رفعش میتونید توی منیفست supoerRtl رو false کنید. اینطور دیگه ساپورت زبان فارسی خاموش میشه و به هر شکل که لیوت رو طراحی کردید در تمام گوشی‌ها اجرا میشه.
kamal_hajatmand 9 سال پیش
در فایل منیفست : android:supportsRtl="true" را بردارید یا false کنید
arashcode 9 سال پیش
من در برنامه از منو هم استفاده کردم که وقتی ساپورت راستچین رو فالس می کنم آیکن ها به سمت چپ حرکت می کنن

پاسخ‌ها 3

Shadow 9 سال پیش

سلام دوست گرامی شما باید داخل تگ اپلیکیشن توی مانیفیست این دو مقدار رو اضافه کنید :

<applicati
android:supportsRtl="false"
tools:replace="android:supportsRtl">

نظرات

arashcode 9 سال پیش
اینکارو هم کردم درست نشد متاسفانه
nero 360 9 سال پیش

یه کاره دیگه هم میتونی بکنی اینه که داخل هر layout بنویسی 
android:layoutDirection = "rtl"

 

نظرات

RouhollahMz 9 سال پیش
البته منظورتون ltr هست ؟
مسعود فرمانی 9 سال پیش

با توجه به اینکه شما برای کاربران ایرانی اپلیکیشن تولید میکنید (که زبانشون rtl هست) به نظر من خیلی مناسب نیست که در منیفست ساپورتِ اون رو false کنید در مورد چینش ویو هاتون میتونید از خصوصیات End و Start درکنار یا بجای Right و Left استفاده کنید و.....

در مورد متن هاتون در ویجت های مختلف ( تکست ویو ، رادیو باتن،ادیت تکست و....) اگه minimumSdk پروژه تون کمتر از 17 هست میتونید در کد جاوا با استفاده از کلاس ViewCompat یک دایرکشن رو به صورت اجباری به اون لایه اختصاص بدید ( در sdk های 17 و بالاتر میتونید از خاصیت layoutDirection در لایه xml تون استفاده کنید .....

ViewCompat.setLayoutDirection(a view, ViewCompat.LAYOUT_DIRECTION_LTR or ViewCompat.LAYOUT_DIRECTION_RTL);

نظرات

arashcode 9 سال پیش
به نظر میاد برای این مشکل راه حلی نیست و من طی جستجوهایی که داشتم همه پیشنهاد دادن که ساپورت rtl رو از مانی فست true بشه که البته این مسئله باعث میشه کنترل هایی که سمت راست هستن بیان به چپ و برعکس که این ایجاد مشکل می کنه چون دیفالت همه ویوها ltr هستش شما برای برنامه های خودتون اگر فعال می کنید چطور مانع از تغییر مکان ویوها میشین ؟چون به قول خودتون زبان اکثر گوشی ها فارسی هست و اگر چک نشه حتما جای کنترل ها عوض میشه

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