آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

تغییر عکس ایمیج باتن هنگام کلیک روی آن

OMID  8 سال پیش  8 سال پیش
0 0

چطوری میتونم کاری کنم که موقع کلیک شدن روی ایمیج باتن عکسش عوض بشه ؟

 

0 0
اگر می خواید که عکسش برای فقط زمانی که کلیک بشه عوضی بشه یعنی در واقع مشخص بشه که کلیک شده، باید از سلکتور استفاده کنید، براش در پوشه drawable یک سلکتور بنویسید و بک گراندش رو همون فایلی که در سلکتور درست کردید رو قرار بدید، اما اگر می خواید که کلا عکسش عوض بشه که باید یک setOnClick براش بنویسید و بگید که هر وقت روش کلیک شد عکسش رو با فلان چیز عوض کن. (8 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
OMID  8 سال پیش
+2 0

ممنون از پاسخگویی شما دوست عزیز 

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

 

   راه حل :

    1.  یک فایل xml برای selector مورد نظرمان می سازیم. نام فایل xml را
       برابر button_selector انتخاب می کنیم و آن را در فولدر drawable
       از پروژه اندروید می سازیم.                                                                   

                                                                                                                                          

 

   2. کد درون این فایل را بر اساس اینکه چه عکسی برای ایمیج باتن مد نظرتان است، به صورت  کدهای زیر است.

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

<item
android:state_pressed="true"> <!--تأیین کردن وضعیت در حالت فشرده شدن-->
<bitmap android:src="@drawable/close"></bitmap> <!--عکس دکمه در حالت فشرده شدن-->
</item>

<item>
<bitmap android:src="@drawable/btnbackground"></bitmap> <!--عکس دکمه در حالت عادی-->
</item>

</selector>

 

   3.  کد زیر را به کدهای مربوط به ایمیج باتن در فایل xml مورد نظر اضافه می کنیم.

 android:src="@drawable/button_selector"
   مثال :
<ImageButton
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/button_selector"
android:scaleType="fitXY"/>
 

 

 


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