2014-09-19 132 views
0

我有大约6到7个图像显示在图像查看时,当我点击一个按钮。我创建了以下代码。没有错误显示,但当我点击按钮没有行动。请帮我图像不显示图像查看

这里是我的代码

package com.ditmi.courseInfoApp; 
    import android.app.Activity; 
    import android.os.Bundle; 
    import android.view.View; 
    import android.view.View.OnClickListener; 
    import android.widget.Button; 
    import android.widget.ImageView; 

    public class ChangeImage extends Activity { 

     private ImageView Image; 
     private Button iButton; 

     private int currentImage = 0; 
     int[] images = { R.drawable.dzongkha, R.drawable.mouse, R.drawable.itom, R.drawable.icon, R.drawable.lap, R.drawable.office }; 

     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.course_detail); 

      Image = (ImageView)findViewById(R.id.imageView); 
      iButton = (Button)findViewById(R.id.btnChangeImage); 

      //Just set one Click listener for the image 
      iButton.setOnClickListener(iButtonChangeImageListener); 

     } 
     View.OnClickListener iButtonChangeImageListener = new OnClickListener() { 

      public void onClick(View v) { 
       //Increase Counter to move to next Image 
       currentImage++; 
       currentImage = currentImage`enter code here` % images.length; 

       Image.setImageResource(images[currentImage]); 

      } 
     }; 

    } 
+0

那是什么您会收到错误更改订单?或者你收到任何错误?我已经测试了你的代码,并且它工作正常(当所有图像加载时数组越界) – 2014-09-19 09:50:12

+0

java.lang.NullPointerException。这是我得到的错误。 – 2014-09-20 04:37:57

回答

0

我这个你应该使用:

Image.setBackgroundResource(images[currentImage]); 

相反的:

Image.setImageResource(images[currentImage]); 

而作为一个通用的编程规则,使用变量名字小写。

+0

仍然不起作用 – 2014-09-19 09:12:58

0

尝试下面的代码

private Drawable getDrawable(int fileName) 
{ 
     return getResources().getDrawable(fileName); 
} 

而与此代码

Image.setImageResource(getDrawable.(images[currentImage])); 

希望它会工作

+0

我应该使用什么文件名 – 2014-09-20 04:50:07

+0

U可以从int [] {R.Drwaable.Your_Image}中获取任何可绘制图像 – Andrain 2014-09-21 09:31:43