تبدیل image به button
سلام.
من در فتوشاپ یک سری دکمه طراحی کرده ام و آن هارا در eclips به صورت image آورده ام حال می خواهم بدونم چجوری می تونم این image ها را کاری کنم که در برنامه شبیه یک button عمل کنند ؟ ( یعنی وقتی روی آنها کلیک می شود ، حالت کلیک شدن را به خود بگیرد)
باتشکر...
شما بایستی حالتهای مختلف یک دکمه را ایجاد کرده و آنها را در یک selector فراخوانی کنید و در نهایت آن را در بک گراند دکمه در نمایید اگر هم در مورد selector اشنا نیستید بایستی سرچ کنید
خیلی خیلی ساده برای image یه دونه id تعریف میکنی و اون id یه رو findviewbyid میکنی و برای اون یه دونه setonclicklistner تعریف میکنی به همین راحتی و میشه مثل یه دکمه
سلام همون طور که دوستان گفتن باید از selector استفاده کنید. من سعی میکنم واضح تر توضیح بدم.
ابتدا داخل پوشه ی drawable یه فایل xml میسازید مثلا به اسم custom_btn.xml و دستورات زیر رو داخلش قرار میدین:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/bck"
android:state_pressed="true" />
<item android:drawable="@drawable/bck_p"
android:state_focused="true" />
<item android:drawable="@drawable/bck_f" />
</selector>
طبق کد مشخصه که برای هر دکمه سه حالت به وجود میاد، در حالت عادی تصویر bck برای دکمه انتخاب شده، هنگام فشردن دکمه تصویر bck_p و موقع فوکوس روی دکمه تصویر bck_f نمایش داده میشه. بنابراین شما هر تصویری که مایل بودین رو به جای این ها قرار بدین.
برای استفاده از این تنظیمات هم کافیه در فایل xml ی که دکمه ی مورد نظرتون قرار داره، android:background مربوط به دکمه رو برابر drawable/custom_btn قرار بدین. (custom_btn همون نام فایل xmlی هست که در مرحله قبل ایجاد کردیم.)
البته من اینجا برای هر کدوم از حالت های دکمه یه تصویر انتخاب کردم که به جای تصویر میتونین یک رنگ انتخاب کنید. همون طور که میدونید کافیه از کد رنگ مورد نظر استفاده کنید. مثلا برای رنگ مشکی به این صورت میشه:
android:drawable="#000000"
من اینو پیدا کردم
// setting image resource from drawable
ImageView imageView = (ImageView) findViewById(R.id.imageView2);
imageView.setImageResource(R.drawable.image1);
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
}
});
یه سر یه این لینک برن http://javatechig.com/android/android-imageview-example
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .