Как обернуть представления внутри HorizontalScrollView? - PullRequest
0 голосов
/ 16 августа 2011

У меня есть HorizontalScrollView и цифры 0-9 как TextView с следующим образом.

  1. Можно ли "обернуть" TextViews?

    Например, я хочу постоянно разрешать прокрутку. Прямо сейчас, когда пользователь прокручивает от 9 до 0, прокрутка прекращается.

    Я хочу установить непрерывную прокрутку (или иметь обтекание TextView), чтобы при достижении пользователем значения 9 снова отображались значения 0, 1, 2, 3 .... А также в обратном направлении; когда пользователь идет влево после 0, тогда появляются 9, 8, 7, ...

  2. Возможно ли "центрировать" выбранный в данный момент TextView?

    Если пользователь нажимает 6, а 6 вправо, могу ли я прокрутить HorizontalScrollView программно, чтобы 6 теперь находилось в центре экрана? Мне нужно то же поведение, что и в элементе управления Галерея.

  3. Возможно ли контролировать / переопределять поведение HorizontalScrollView чтобы прокручивать только 1 элемент за раз?

    Прямо сейчас, если они сильно ударить / бросить, HorizontalScrollView прокрутка полностью влево (или вправо, в зависимости от направления удара / отбрасывания).


 <HorizontalScrollView android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/hsv">
  <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal">
   <TextView android:text="0" android:id="@+id/tv0" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="1" android:id="@+id/tv1" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="2" android:id="@+id/tv2" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="3" android:id="@+id/tv3" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="4" android:id="@+id/tv4" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="5" android:id="@+id/tv5" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="6" android:id="@+id/tv6" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="7" android:id="@+id/tv7" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="8" android:id="@+id/tv8" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
   <TextView android:text="9" android:id="@+id/tv9" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
  </LinearLayout>
 </HorizontalScrollView>

любая помощь приветствуется.

1 Ответ

0 голосов
/ 16 августа 2011

На SO

уже есть пара отличных ответов.

Принятый ответ сверху

если вы работаете со списком / сеткой или чем-то, что использует Adapter для данные, вы можете использовать самый отличный класс, написанный CommonsWare и доступно здесь:

http://github.com/commonsguy/cwac-endless

это было специально для этой цели

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...