2014-02-17 39 views
0

我的Android應用程序中有一個ImageView。我正在使用ImageView作爲按鈕。當我按下按鈕時,圖像應該改變。在我的代碼中,它說res cannot be resolved。我的代碼如下:Res無法通過ImageView解析

loginbtn.setOnClickListener(btnOnClickListener); 
    //here change images according to touch 
    loginbtn.setOnTouchListener(new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent arg1) { 

      // TODO Auto-generated method stub 
      // 
      switch (arg1.getAction()) { 
      case MotionEvent.ACTION_DOWN: { 
       v.setImageBitmap(res.getDrawable(R.drawable.compare_now_click)); 
       // res 
       break; 
      } 
      case MotionEvent.ACTION_CANCEL:{ 
       v.setImageBitmap(res.getDrawable(R.drawable.)); 
       break; 
      } 
      } 
      return true; 


      return false; 
     } 
    }); 

在此行中:

v.setImageBitmap(res.getDrawable(R.drawable.compare_now_click)); 

,我發現了錯誤res cannot be resolved。爲什麼會發生這種情況?

+1

是什麼'res'和它在哪兒初始化? – Raghunandan

+0

@Raghunandan yap這是問題。我從web中提取的代碼。他們沒有提到它的簡單 –

+0

看起來像你沒有正確初始化res。所以告訴我們那部分代碼 – Raghunandan

回答

4

使用這個代替:

((ImageView)v).setImageResource(R.drawable.compare_now_click); 

否則,您必須首先從上下文的資源,例如如果你是在Activity,使用Resources res = getResources();

而且,你的第二個圖像資源ID是不完整的:R.drawable