مشکل در رابطه با طراحی UI - ثابت نگه داشتن نسبت عرض و ارتفاع (حل شد)
با استفاده از ImageButton بجای Button و ست کردن مشخصه FitXY مشکل حل شد.
الان دیگه آیکونها و عکسهای مربع یا دایره تو هر اسکرینی که برن دچار مشکل نمیشن !
سلام دوستان ...
برای اینکه نسبت ارتفاع و عرض یک دکمه 1 به 1 باشه باید چیکار کنم ؟
میخوام به دکمه ها و layout های در بر گیرندشون وزن بدم که هر کدوم یه درصدی از فضا رو پر کنن ..
ولی میخوام دکمه ها مربع باشند و وقتی اندازه ها تغییر میکنه مربع بمونن !!!





سلام منظور شما رو دقیقا میدونم ولی من تا حالا راهی جز این ایده ای که الان میگم پیدا نکردم.
شما میتونین از دو LinearLayout داخل هم یکی vertical ویکی Horizontal به شکل زیر استفاده کنین :
اول لایه ی Horizontal رو قرار بدین که شامل سه تا کنترل برای وزن دادن میشه که یکی از اونها یک LinearLayout به حالت vertical هست که قراره دگمتون توش قرار بگیره و اون دوتای دیگه دلخواه هستن و قراره شفاف باشن مثلا میتونین FrameLayout بزارین به این سه کنترل داخل HorizontalLayout ، وزن های مورد نظر رو بدین (Width Weight) حالا میریم سراغ VerticalLayout که باز اون خودش مثل قبل با قرار دادن سه تا FrameLayout به سه قسمت تقسیم بشه و کنترل های داخلش وزن دهی میشه (Height Weight)
با وزن دادن صحیح میتونین نسبت عرض و ارتفاع فضایی که در وسط ایجاد شده رو تنظیم کنین!
در آخر کافیه button مورد نظرتون رو توی FrameLayout وسطی بذارین و از ارتفاع و عرض اون رو fill_parent قرار بدین!
البته یه ایرادی که این روش داره اینه که توی گوشی های مختلف چون نسبت ارتفاع گوشی به عرضش متغیره شما نمیتونین با وزن دادن عرض و ارتفاع طبق یک معیار خواص مطمن باشین که توی همه ی گوشی ها دگمتون حتما به شکل دایره ایه!
توی بعضی گوشی ها دایره ای خواهد بو توی بعضی بیضی عرضی و توی بعضی بیضی طولی ولی این بیضی خیلی کشیده نیست!
باز میگم این یک ایدست و ممکنه راه بهتری باشه که دوستان میان و میگن!
این کد xml چیزیه که گفتم توی یک فایل xml کپی کنین و نتیجه رو توی ساز های مختلف گوشی ببینین:
نسبت وزن ها:
عرض
0------50: 0.1562
50-----150: 0.3125
150----320: 0.5312
ارتفاع
0------100: 0.2083
100-----200: 0.2083
200------480: 0.5833
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#aaaaaa" android:orientation="horizontal" > <FrameLayout android:layout_width="0dip" android:layout_height="fill_parent" android:layout_weight="0.1562" android:background="#aa0000aa" > </FrameLayout> <LinearLayout android:layout_width="0dip" android:layout_height="fill_parent" android:layout_weight="0.3125" android:orientation="vertical" > <FrameLayout android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="0.2083" android:background="#aaaa5500" > </FrameLayout> <FrameLayout android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="0.2083" > <Button android:id="@+id/button1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:text="Button" /> </FrameLayout> <FrameLayout android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="0.5833" android:background="#aaaa5500" > </FrameLayout> </LinearLayout> <FrameLayout android:layout_width="0dip" android:layout_height="fill_parent" android:layout_weight="0.5312" android:background="#aa0000aa" > </FrameLayout> </LinearLayout>

من نمیدونم داستان طراحی توی اکلیپس چیه ولی میدونم به طرز غیر قابل انکاری پدر آدم رو در میآره !!!!!
هرجاش رو درست میکنی یه جاش در میره !!
بابا مگه Visual Studio چشه ؟!؟!؟
هرچی رو دلت میخواد هرجا که دوس داری تو هر اندازه میزاری !!!!!
شما رو به هرکی که میپرستید اگه لینکی، آموزشی یا کتابی واسه طراحی سراغ دارید بگید من بخونم ..
الان با هزار بدبختی و نصف روز وقت گذاشتن این رو طراحی کردم آخرش هم تو تبلت آیکون ها اندازه کله مورچه میشه !!!
عاجزانه درخواست کمک دارم ..
تا وسط های فصل 7 خوندم ، استاد هم چیزی راجب این مساله نگفته ( جز همون فصل اول که معرفی بود فقط !! )
اگه توو فصلهای بعدی هست بگید برم اونها رو ببینم ..
خلاصه کــــــــــــمــــــــــــــــــــــــــــــــــــــــک کـــــــــــــــــــــنــــــــــــــــــــــیــــــــــــــــــــــــــــــــــــــــــــــــــــــــــد !!!!!

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