Java android中的ArrayIndexOutOfBounds
我制作了一个android应用程序,因为我得到了一个ImageURL的arrayList,我想用这个arrayList在android中制作一个自动化的lsideShow,我用线程尝试了如下操作,但它给了我ArrayIndexOputoBounds异常,它转到第二个图像abd,然后给出异常,请帮我保存,我的代码如下:Java android中的ArrayIndexOutOfBounds,java,android,arraylist,slideshow,runnable,Java,Android,Arraylist,Slideshow,Runnable,我制作了一个android应用程序,因为我得到了一个ImageURL的arrayList,我想用这个arrayList在android中制作一个自动化的lsideShow,我用线程尝试了如下操作,但它给了我ArrayIndexOputoBounds异常,它转到第二个图像abd,然后给出异常,请帮我保存,我的代码如下: resultArray = new ArrayList<String>(); iv_paly.setOnClickListener(new OnCLickListene
resultArray = new ArrayList<String>();
iv_paly.setOnClickListener(new OnCLickListener()){
@Override
OnClick(){
imageLoader.displayImage(resultArray.get(1), proImage, options);
proImage.postDelayed(swapImage, 3000);
}
MediaPlayer introSound, bellSound;
Runnable swapImage = new Runnable() {
@Override
public void run() {
for (int i = 0; i <= resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}
}
};
}
resultArray=newarraylist();
iv_paly.setOnClickListener(新的OnCLickListener()){
@凌驾
OnClick(){
imageLoader.displayImage(resultArray.get(1)、proImage、options);
proImage.postDelayed(swapImage,3000);
}
MediaPlayer声音、贝尔声音;
Runnable swapImage=新Runnable(){
@凌驾
公开募捐{
对于(inti=0;i变化
for (int i = 0; i <= resultArray.size(); i++) {
for(int i=0;i删除“=”
for(int i=0;i
因为数组在java中是基于零的,所以您必须编写数组的索引是基于零的,所以如果数组大小为10,它应该从[0]到[9]计数。在这种情况下,您永远不会有[10]元素。在for循环中,您从[0]到[10]迭代,这将导致一个ArrayIndexOutOfBounds
错误,因为您需要数组中的第11个元素(该元素不存在)
所以基本上是改变的
for (int i = 0; i <= resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}
for(inti=0;i试试这个
for (int i = 0; i < resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}
for(int i=0;i
for(int i=0;i@StephaneM谢谢你亲爱的freiend..但是你能告诉我如何这样做幻灯片放映吗?我只得到两张图像,然后我的幻灯片放映就停止了(…希望你能帮助我朋友..谢谢。你的问题已经解决了,请点击旁边的小复选标记接受最合适的答案。如果你有其他问题,请提出新问题。请不要要求别人为你编写应用程序,而最好显示你正在尝试什么以及到底出了什么问题还要添加错误日志。答案会被否决,因为。。。?
for (int i = 0; i < resultArray.size(); i++) {
for (int i = 0; i <= resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}
for (int i = 0; i < resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}
for (int i = 0; i < resultArray.size(); i++) {
imageLoader.displayImage(resultArray.get(i), proImage, options);
}