2013-03-29 5 views
0

Я хочу иметь дизайн на моем ImageButton, как это ...ImageButton изменения на прессованного и нажмите событие

ImageView1-> Pressed-> ImageView2-> лево-> ImageView3-> pressed-> ImageView4-> левый -> ImageView1

Я пробовал различные комбинации сфокусированных и нажатых, но не был успешным. Может ли кто-нибудь помочь мне сделать это?

+1

Да, многие люди могут помочь вам в этом. Но никто не может не увидеть, что вы пробовали – codeMagic

+1

, если у вас есть правильное соглашение об именах, после чего можно сделать так, как img_1 щелкнул, а затем использовать string tokenizer получить значение после '_' прирастить его и подготовить, как этот imageName = "img _" + variable_value; затем использовать getResources(). getIdentifier (imageName, «drawable», getPackageName()); Это простой метод. Вы получите идентификатор изображения с указанным выше методом, а затем используйте метод imageView.setImageDrawable() для обновления изображения. – kumar

+0

@kumar Спасибо за ваш комментарий, но я не могу получить то, что вы пытаетесь сказать, кстати у меня есть решение для этого и обновил его в ответ. – Ashu

ответ

0
img.setOnTouchListener(new OnTouchListener(){ 
public boolean onTouch(View v, MotionEvent event) { 
    if(flag==0){ 
     switch(event.getAction()) 
     { 
      case MotionEvent.ACTION_DOWN : 
      img.setBackgroundResource(R.drawable.Image2); 
      break; 
      case MotionEvent.ACTION_UP : 
      flag=1; 
      img.setBackgroundResource(R.drawable.Image3); 
      break; 
     } 
    }else if(flag==1){ 
     switch(event.getAction()) 
     { 
      case MotionEvent.ACTION_DOWN : 
       img.setBackgroundResource(R.drawable.Image4); 
       break; 
      case MotionEvent.ACTION_UP : 
       flag=0; 
       img.setBackgroundResource(R.drawable.Image1); 
     } 
    } 
    return false; 

} });

Смежные вопросы