Использование направления справа налево в представлении сетки

Я хочу использовать направление справа налево в gridview. По умолчанию gridview показывает содержимое слева направо.

Например:

Если у меня есть этот массив, и я хочу указать для него 3 столбца:

[1, 2, 3, 4, 5, 6, 7, 8, 9]

GridView показывает это так:

[1 2 3]
[4 5 6]
[7 8 9]

но я хочу показать это так:

[3 2 1]
[6 5 4]
[9 8 7]

person Hosein Bitaraf    schedule 08.05.2012    source источник


Ответы (2)


По предложению Дмитрия Данилика я использую эту функцию и решаю свою проблему.

   /** Returns inverted list by step that take. for example if our list is {1, 2, 3, 4, 5, 6,
   * 7 ,8 ,9} and step is 3 inverted list is this: {3, 2, 1, 6, 5, 4, 9, 8, 7}  
   */
       public static <E> ArrayList<E> invert(List<E> source, int step){
            List<E> inverted = new ArrayList<E>();
            for(int i = 0; i < source.size(); i++){
                if((i + 1) % step == 0){
                    for(int j = i, count = 0; count < step; j--, count++){
                        inverted.add(source.get(j));
                    }
                }
            }

            //
            // When (source.size() % step) is not 0 acts.this is for last of list. add last part
            // of the source that wasn't add.
            //
            int remainder = source.size() % step;
            if((remainder) != 0 ){
                for (int j = source.size() - 1, count = 0; count < (remainder); j--, count++) {
                    inverted.add(source.get(j));
                }
            }

            return (ArrayList<E>) inverted;

        }
person Hosein Bitaraf    schedule 09.05.2012

Разве вы не можете просто изменить свой список, чтобы он соответствовал вашим требованиям?

До

List<String> list = new ArrayList<String>();
list .add("Element 1");
list .add("Element 2");
list .add("Element 3");

После

List<String> list = new ArrayList<String>();
list .add("Element 3");
list .add("Element 2");
list .add("Element 1");
person Dmytro Danylyk    schedule 08.05.2012