۲ علی باقری
سوالی در مورد Button ها
پوریا شفیعی حل شده توسط پوریا شفیعی

سوالی که من داشتم این هست که چطور کاری کنیم که button‌ها رقتی کلیک میکنیم کمی رنگشون تغییر کنه همون طور که در بقیه اپ‌ها میبینیم ؟

سلام دو راه هست :

1-

اگر میخواهید وقتی کاربر روی دکمه کلیک کرد رنگش صرفا عوض شه و همون حالت بمونه

وقتی setOnClickListenter رو ست کردین و ایمپلیمنت کردین 

بیاین و این کار کنین و از اتربیوت زیر استفاده کنین.

(nameButton.setBackgroundColor(nameColor

2-

اگر میخواهید سلکتور مانند بشه یعنی ی لحظه عوض شه :

مراحل زیر رو به ترتیب انجام بده:

1. توی پوشه values یه فایل xml با یه اسم دلخواه (مثلا color.xml) بساز

2. توی این فایل به شکل زیر بنویس :

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <drawable name="color1">#ff0000</drawable>
  <drawable name="color2">#002255</drawable>
</resources>

3. حالا توی selector(فایلی بساز توی drawables) به صورت project باشه به این شکل میتونی ازش استفاده کنی:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:drawable="@drawable/color2" android:state_pressed="false"/>
 <item android:drawable="@drawable/color1" android:state_pressed="true"/>
</selector>

و در آخر: این فایل xml رو باید به عنوان background دکمه مورد نظرت استفاده کنی.

سوالی بود بپرس

موفق باشی

بهترین پاسخ
پوریا شفیعی ۱۵ بهمن ۱۳۹۸، ۰۶:۳۵

سلام آقا پوریا 

1. بیزحمت قسمت اول رو بیشتر توضیح بده اصلا متوجه نمیشم.

 

2. در روش دوم: در کد مربوط به فایل color.xml بالا بجای تگ drawable  از خود تگ color موجود در فایل colors.xml و رنگهای موجود در اون استفاده کنیم چه فرقی داره؟ بجای اینکه بیاییم یه فایل مجزا با تگ drawable بسازیم.

 

البته یه تگ drawable تو خود فابل colors.xml ساختم که موقع رفرنس دادن برنامه ارور داد یعنی باید تگ drawble توی یه فایل مجزا از سایر تگهای color نوشته بشه. علت چیه. نمیدونم.

 

ضمن اینکه با سایر المانهای قابل تعریف در ریسورس colors.xml چطوری میشه بیشتر آشنا شد؟ رفرنس بیزحمت. مرسی از تو

 

پژمان آزاد ۱۷ اردیبهشت ۱۳۹۹، ۱۵:۴۶