Как заставить Android SlidingDrawer скользить из левых?

Здесь возможна реализация в рабочем коде решения псевдокода, написанного silvertab.

Спасибо silvertab!

public class Array {

   public static <T> T[] concat(T[] a, T[] b, ArrayBuilderI<T> builder) {
      T[] c = builder.build(a.length + b.length);
      System.arraycopy(a, 0, c, 0, a.length);
      System.arraycopy(b, 0, c, a.length, b.length);
      return c;
   }
}

Далее следует интерфейс строителя.

Примечание: сборщик необходим, потому что в Java невозможно выполнить

new T[size]

из-за стирания универсального типа:

public interface ArrayBuilderI<T> {

   public T[] build(int size);
}

Здесь конкретный конструктор, реализующий интерфейс, создающий массив Integer:

public class IntegerArrayBuilder implements ArrayBuilderI<Integer> {

   @Override
   public Integer[] build(int size) {
      return new Integer[size];
   }
}

И, наконец, приложение / тест:

@Test
public class ArrayTest {

   public void array_concatenation() {
      Integer a[] = new Integer[]{0,1};
      Integer b[] = new Integer[]{2,3};
      Integer c[] = Array.concat(a, b, new IntegerArrayBuilder());
      assertEquals(4, c.length);
      assertEquals(0, (int)c[0]);
      assertEquals(1, (int)c[1]);
      assertEquals(2, (int)c[2]);
      assertEquals(3, (int)c[3]);
   }
}
20
задан Jeremy Logan 23 October 2009 в 09:18
поделиться

1 ответ

Я не думаю, что вы сможете, кроме как, возможно, взяв исходный код SlidingDrawer , внося в него изменения и используя свою модифицированную версию. Точно так же нельзя сделать выдвижной ящик , спускающийся сверху.

6
ответ дан 30 November 2019 в 00:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: