Hello, I have a 6 * 6 GridView . I need to make a "ladder" animation at the start of the activity. Stuck on the animation itself. This is the order of the items to be animated. It starts from the top left corner, ends at the bottom right.

 1 2,7 3,8,13 4,9,14,19 5,10,15,20,25 6,11,16,21,26,31 12,17,22,27,32 18,23,28,33 24,29,34 30,35 36 

Very stupid separately to animate everything in order. I want to create a loop, but having written for stared at the blinking cursor and am dumb. How can I do that?

About the adapter, in general, a dead end. He goes through everything in order, from left to right, but I need a ladder.

    1 answer 1

      for (int i = 1; i < 37; i++) { if (i == 1) { Log.i("TAG", "i : - " + i); } else if (i == 2) { Log.i("TAG", "i : - " + i + " , " + (i + 5)); } else if (i == 3) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10)); } else if (i == 4) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15)); } else if (i == 5) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20)); } else if (i == 6) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20) + " , " + (i + 25)); } else if (i == 12) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20)); } else if (i == 18) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15)); } else if (i == 24) { Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10)); } else if (i == 30) { Log.i("TAG", "i : - " + i + " , " + (i + 5)); } else if (i == 36) { Log.i("TAG", "i : - " + i); } } 

    Using switch

      for (int i = 1; i < 37; i++) { switch (i) { case 1: Log.i("TAG", "i : - " + i); break; case 2: Log.i("TAG", "i : - " + i + " , " + (i + 5)); break; case 3: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10)); break; case 4: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15)); break; case 5: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20)); break; case 6: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20) + " , " + (i + 25)); break; case 12: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20)); break; case 18: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15)); break; case 24: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10)); break; case 30: Log.i("TAG", "i : - " + i + " , " + (i + 5)); break; case 36: Log.i("TAG", "i : - " + i); break; } } 

    Using switch bit shorter

      for (int i = 1; i < 37; i++) { switch (i) { case 1: case 36: Log.i("TAG", "i : - " + i); break; case 2: case 30: Log.i("TAG", "i : - " + i + " , " + (i + 5)); break; case 3: case 24: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10)); break; case 4: case 18: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15)); break; case 5: case 12: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20)); break; case 6: Log.i("TAG", "i : - " + i + " , " + (i + 5) + " , " + (i + 10) + " , " + (i + 15) + " , " + (i + 20) + " , " + (i + 25)); break; } } 

    Result

     I/TAG: i : - 1 I/TAG: i : - 2 , 7 I/TAG: i : - 3 , 8 , 13 I/TAG: i : - 4 , 9 , 14 , 19 I/TAG: i : - 5 , 10 , 15 , 20 , 25 I/TAG: i : - 6 , 11 , 16 , 21 , 26 , 31 I/TAG: i : - 12 , 17 , 22 , 27 , 32 I/TAG: i : - 18 , 23 , 28 , 33 I/TAG: i : - 24 , 29 , 34 I/TAG: i : - 30 , 35 I/TAG: i : - 36 
    • Big Loop of Someone - Flippy
    • The solution coincides with yours, substitute your animation for the logs, possibly with a delay and voila. I would be grateful if you see a more elegant solution. I was wondering, here is my option. - TimurVI