【发布时间】:2011-04-19 04:27:32
【问题描述】:
我正在构建一个 ImageSwitcher 以适应移动应用程序作为横幅切换器。目前,我们使用 Handler 旋转横幅并将可运行对象延迟 7 秒(准确地说是 7000 毫秒),但我们希望在两个图像之间产生更花哨的过渡效果。我使用this 作为参考,并且这样做很糟糕。我理解它背后的概念,但我想完全去掉画廊部分,只使用我们必须使用 ImageSwitch 转换的处理程序。
这是我们的图片切换代码:
private Runnable updateBannerRun = new Runnable(){
public void run() {
if (bannerQueue > 3){
bannerQueue = 1;
} else {
bannerQueue ++;
}
ImageView i = (ImageView)findViewById(R.id.imageView1);
switch (bannerQueue){
case 1:
i.setImageResource(R.drawable.image1);
break;
case 2:
i.setImageResource(R.drawable.image2);
break;
case 3:
i.setImageResource(R.drawable.image3);
break;
case 4:
i.setImageResource(R.drawable.image4);
break;
}
updateBanner();
}
};
这是处理程序的代码:
public void updateBanner(){
mHandler.postDelayed(updateBannerRun, 7000);
}
我最大的问题是当我们运行它时,我们得到一个 nullPointException 返回。
任何帮助将不胜感激。
【问题讨论】:
-
你能在 NPE 发生时发布
logcat吗?
标签: android image viewswitcher