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

استفاده از corner و Selector

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

سلام. وقتتون بخیر

من دو تا کد دارم از نوع xml که اینجورین

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/btn" android:state_pressed="false"></item>
<item android:drawable="@drawable/btn_pressed" android:state_pressed="true"></item>

</selector>

و دومی ....

 <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
    <solid android:color="#eeffffff" />
    <corners android:bottomRightRadius="8dip"
        android:bottomLeftRadius="8dip" 
        android:topRightRadius="8dip"
        android:topLeftRadius="8dip"/>
</shape>

اولی مربوط به Selector و دومی Corner کردن یه دکمه.

چجوری میتونم این دو کد رو با هم توی یه Xml قرار بدم و به یه button نسبتش بدم؟

هر کاری کردم نتونستم. ممنون میشم کمک کنید.

نظرات

doost_fu 11 سال پیش
شاید من درست متوجه نشدم ولی Selector خودش از دوتا فایل درست شده شما باید Corner به اون فایل ها اضافه کنی
MeyrOOn 11 سال پیش
آخه مثل این میمونه که بگی میخوام 2تا تصویر زمینه بندازم روی یک مانیتور (مثلاً)! اون Shape رو میتونی از نظر گرافیکی با btn تلفیق کنی که اونو نشون بده. موقع تاچ هم همون btn_pressed رو نشون بده.
sajad98 11 سال پیش
من اصلا از نظر ساختن یه دکمه مشکل دارم اصلا نتونستم درست کنم هر کاری کردم. کلا شکل میریزه به هم. دیگه دست به دامن همین Corner شدم.
MeyrOOn 11 سال پیش
اگر میخوای گوشه ها بهم نریزه میتونی از ninePatch ها استفاده کنی. ولی بصورت کلی اگر میخوای دکمه تصویر مربع یا دایره داشته باشه و در اسکرین های مختلف بهم نریزه بجای Button از ImageButton استفاده کن و مشخصه Scale رو متناسب با خواستت بزار مثلا Center یا FitXY از وزن هم قافل نشو.

پاسخ‌ها 1

Spirit 11 سال پیش

داخل تگ item میتونید از تمام موارد مجاز من جمله تگ corner استفاده کنید. مثلا :

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_pressed="true"><shape>
<gradient android:angle="270" android:endColor="#43a5ef" android:startColor="#7BC0F4" />

<stroke android:width="1dp" android:color="#53933f" />

<corners android:radius="5dp" />

<padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
</shape>
</item>
<item><shape>
<gradient android:angle="270" android:endColor="#7BC0F4" android:startColor="#43a5ef" />

<stroke android:width="1dp" android:color="#53933f" />

<corners android:radius="5dp" />

<padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
</shape>
</item>

</selector>

نظرات


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