2013-03-15 62 views
0

當我嘗試使用來改變圖像的來源:更改圖片來源編程

img.setBackgroundResource(R.drawable.anfex2011); 

img.setImageResource(R.drawable.anfex2011); 

我得到的錯誤:

03-15 13:56:56.215: E/AndroidRuntime(30733): FATAL EXCEPTION: main 
03-15 13:56:56.215: E/AndroidRuntime(30733): java.lang.IllegalStateException: Could not execute method of the    activity 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.view.View$1.onClick(View.java:3691) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.view.View.performClick(View.java:4211) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.widget.CompoundButton.performClick(CompoundButton.java:105) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.view.View$PerformClick.run(View.java:17267) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.os.Handler.handleCallback(Handler.java:615) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.os.Handler.dispatchMessage(Handler.java:92) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.os.Looper.loop(Looper.java:137) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.app.ActivityThread.main(ActivityThread.java:4898) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at java.lang.reflect.Method.invokeNative(Native Method) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at java.lang.reflect.Method.invoke(Method.java:511) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at dalvik.system.NativeStart.main(Native Method) 
03-15 13:56:56.215: E/AndroidRuntime(30733): Caused by: java.lang.reflect.InvocationTargetException 
03-15 13:56:56.215: E/AndroidRuntime(30733): at java.lang.reflect.Method.invokeNative(Native Method) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at java.lang.reflect.Method.invoke(Method.java:511) 
03-15 13:56:56.215: E/AndroidRuntime(30733): at android.view.View$1.onClick(View.java:3686) 
03-15 13:56:56.215: E/AndroidRuntime(30733): ... 12 more 
03-15 13:56:56.215: E/AndroidRuntime(30733): Caused by: java.lang.NullPointerException 
03-15 13:56:56.215: E/AndroidRuntime(30733): at com.TLC.aelminingsolutions.MainActivity.onClickLists(MainActivity.java:675) 
03-15 13:56:56.215: E/AndroidRuntime(30733): ... 15 more 

究竟是什麼時我做錯了?

編輯: 下面是一些代碼:

 @SuppressWarnings("deprecation") 
     public void onClickLists(View v) 
    {  
     switch (v.getId()) 
     { 
    case R.id.radCoalMiningShallow : 
    { 
     ImageView img = (ImageView) findViewById(R.id.img); 
     img.setBackgroundDrawable(R.drawable.anfex2011); 
     //img.setImageDrawable(R.drawable.anfex2011); 
     break; 
    } 

在此先感謝。 帕特里克

+0

img初始化? – KunalK 2013-03-15 12:07:13

+0

你是如何初始化img的? – Nirali 2013-03-15 12:07:50

+0

*無法執行活動的方法*意味着你試圖以錯誤的方式改變圖像PLZ分享更多的代碼並解釋你在做什麼 – 2013-03-15 12:08:10

回答

0

試試這個,形象OnTouchListener()

img.setOnTouchListener(new OnTouchListener() { 

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


      switch (arg1.getAction()) { 
       case MotionEvent.ACTION_DOWN: { 
        imgTicket.setImageResource(R.drawable.hticket); 
        break; 
       } 
       case MotionEvent.ACTION_UP: { 
        imgTicket.setImageResource(R.drawable.ticket); 
        break; 
       } 
       case MotionEvent.ACTION_CANCEL:{ 
        imgTicket.setImageResource(R.drawable.ticket); 
        break; 
       } 
       } 
       return true; 
      // TODO Auto-generated method stub 

     } 
    }); 
+0

檢查編輯,讓我知道你還需要從我...謝謝:) – 2013-03-15 12:38:09

0

你有你的初始化ImageView的?

ImageView img = (ImageView) findViewById(R.id.ImageView1); 
img.setImageResource(R.drawable.anfex2011); 

這是你的imagename - anfex2011?