سلام وقت بخیر
من دنبال راهی هستم بتونم متن چک باکس رو راست چین کنم
راه زیر رو انجام دادم ولی از ای پی ای 21 به بالا فقط جواب میده
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorMultiple"
از روش زیر هم رفتم که اتربیوت های زیر رو برای چک باکس قرار دادم ولی تغییری نکرد (عجیب!)
android:textDirection=""
android:layoutDirection=""
سپاس خوندین.
سلام
سوال اول:
استایل هایی که شما واسه برنامتون استفاده میکنید مجموعه ای از ویژگی هایی هستند به اسم attribute که به همراه مقادیر اون ها داخل فایل های از پیش تعریف شد تعریف شدن.
شما میتونید خودتون attr تعریف کنید و از اون ها در استایلتون استفاده کنید.
برای ساختن این مورد به سوال زیر مراجعه کنید:
https://stackoverflow.com/questions/3441396/defining-custom-attrs
سوال دوم:
layoutDirection برای این هست که شما بتونید تمامی لایه ها رو بر اساس زبان کاربر یا حتی به صورت پیش فرض راست چین یا چپ چین کنید.
textDirection برای شیوه نمایش متون به کار میره ممکنه خود لایه راست چین باشه اما شما با این ویژگی متن رو باز تغییر بدین
سوال سوم:
از این ویژگی برای ویو هایی که اسکرول میشن استفاده میشه. فرض کنین ما لیستی از آیتم ها داریم و به صورت زیر نمایش داده میشه:
اما اگه الان خاصیت clipToPadding="false" رو برابر با false قرار بدیم به صورت پیشفرض وقتی اسکرول نمی کنیم به صورت زیر هستش:
حالا اگه ما بخوایم اسکرول به بالا یا پایین انجام بدیم به صورت زیر میشه:
یا
وحید عزیز سپاس از پاسخت
فقط چطوری باید متن چک باکس رو ببرم سمت چپ که در تمامی ورژن ها پاسخگو باشه
سلام.
قابلیت rtl layout از api ۱۷ به بعد یعنی:
Android 4.2 (Jelly Bean)
اضافه شده و همچنین اتریبیوت های android:textDirection و android:layoutDirection هم از همین api17 اضافه شدن.
راه حل این سؤال برای api۱۷ به بالا، rtl کردن android:layoutDirection هست.
اما برای نسخه های پایینتر بنظرم باید لایه ی مجزا بسازید. روی layoutDirection دکمه های alt+shift+enter رو بزنید و override resource کنید تا برای نسخه های پایینتر، از لیوت دیگه ای استفاده بشه.
در این لیوت CustomCheckBox خودتون رو بسازید:
<LinearLayout
android:id="@+id/lyt_checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="تست چک باکس" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
در مورد textDirection اگر ساده بخوام بگم، مثل ctrl + shift راست و چپ توو تکست ادیتورها و word میمونه.
مثلا جمله ی "متخصص ۷learn هستم." رو داخل ادیتور همین پست کپی کن و ctrl + shift چپ کیبوردو بزن بعد چینش تکست رو ببین به چه شکل در میاد.