如何正确循环imageButtons?

时间:2015-11-16 19:57:16

标签: java android for-loop imagebutton

嘿伙计,所以我想要设置3个imageButton图标/标签。所以我做了一个循环并完成它们。现在,用户可以按下许多标签(例如食品标签,零售标签,外壳标签等)并添加到Global ArrayList。现在,如果用户只按了1个标签,并且需要设置三个图像按钮,我想将第一个图像按钮设置为他们选择的唯一标签,并将其余部分设置为白色空白图像,但我一直得到以下错误:

java.lang.IndexOutOfBoundsException:索引1无效,大小为1

这是我的循环,我不知道我在这里做错了什么。

result -= result / n;

这是我制作标签arraylist的地方:

 private void getIcons()
    {
        iconArray.add(icon1);
        iconArray.add(icon2);
        iconArray.add(icon3);
        for(int i = 0; i < iconArray.size(); i++)
        {
            ImageView button= iconArray.get(i);
            if(Global_Class.getInstance().getValue().tags.size() == 1)
            {
                if(Global_Class.getInstance().getValue().tags.get(i) == null)//Here is where Its giving me an ERROR!!!!!
                {
                    button.setImageResource(R.drawable.icon_blank);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "food")
                {
                    button.setImageResource(R.drawable.white_small_icon_food);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "bar")
                {
                    button.setImageResource(R.drawable.white_small_icon_bar);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "club")
                {
                    button.setImageResource(R.drawable.white_small_icon_club1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "housing")
                {
                    button.setImageResource(R.drawable.white_small_icon_housing);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "sports")
                {
                    button.setImageResource(R.drawable.white_small_icon_sports);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "retail")
                {
                    button.setImageResource(R.drawable.white_small_icon_retail);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "outdoors")
                {
                    button.setImageResource(R.drawable.white_small_icon_outdoors1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "education")
                {
                    button.setImageResource(R.drawable.white_icon_education);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "landmark")
                {
                    button.setImageResource(R.drawable.white_small_icon_landmark);
                }
            }
            else if(Global_Class.getInstance().getValue().tags.size() == 2)
            {
                if(Global_Class.getInstance().getValue().tags.get(i) == null)
                {
                    button.setImageResource(R.drawable.icon_blank);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "food")
                {
                    button.setImageResource(R.drawable.white_small_icon_food);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "bar")
                {
                    button.setImageResource(R.drawable.white_small_icon_bar);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "club")
                {
                    button.setImageResource(R.drawable.white_small_icon_club1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "housing")
                {
                    button.setImageResource(R.drawable.white_small_icon_housing);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "sports")
                {
                    button.setImageResource(R.drawable.white_small_icon_sports);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "retail")
                {
                    button.setImageResource(R.drawable.white_small_icon_retail);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "outdoors")
                {
                    button.setImageResource(R.drawable.white_small_icon_outdoors1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "education")
                {
                    button.setImageResource(R.drawable.white_icon_education);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "landmark")
                {
                    button.setImageResource(R.drawable.white_small_icon_landmark);
                }
                else
                {
                    //
                }

            }
            else
            {
                if(Global_Class.getInstance().getValue().tags.get(i) == "food")
                {
                    button.setImageResource(R.drawable.white_small_icon_food);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "bar")
                {
                    button.setImageResource(R.drawable.white_small_icon_bar);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "club")
                {
                    button.setImageResource(R.drawable.white_small_icon_club1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "housing")
                {
                    button.setImageResource(R.drawable.white_small_icon_housing);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "sports")
                {
                    button.setImageResource(R.drawable.white_small_icon_sports);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "retail")
                {
                    button.setImageResource(R.drawable.white_small_icon_retail);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "outdoors")
                {
                    button.setImageResource(R.drawable.white_small_icon_outdoors1);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "education")
                {
                    button.setImageResource(R.drawable.white_icon_education);
                }
                else if(Global_Class.getInstance().getValue().tags.get(i) == "landmark")
                {
                    button.setImageResource(R.drawable.white_small_icon_landmark);
                }
                else
                {
                    //
                }
            }


        }
    }

我在另一个课程中添加了它:

public class GlobalVariables
{
    public ArrayList<String> tags = new ArrayList<>();
}

0 个答案:

没有答案
相关问题