Android: Autoscrolling HorizontalScrollView

Я использую следующий код для имитации вкладок, и, поскольку есть больше вкладок, ширина которых может вместить пользователя, можно прокручивать влево или вправо, чтобы сделать кнопку вкладок видимой. Все это работает, однако я также предоставляю пользователю возможность перемещаться между вкладками, проводя пальцем влево или вправо по содержимому вкладки. Опять же – это работает. Но когда я перехожу на крайний правый вклад, его соответствующая кнопка едва заметна. Я хочу, чтобы таблица autoscroll внутри HorizontalScrollView поэтому выбранная кнопка вкладки будет видна, но когда я выполняю HorizontalScrollView.smoothScrollTo(300, 0) ничего не происходит. Не важно, насколько высоко я установил первый параметр x ничто никогда не сдвинется (да, у меня есть алгоритм для вычисления точной позиции).

Вот код XML для прокрутки кнопок вкладок

 <HorizontalScrollView android:layout_width="fill_parent" android:background="@color/tabs_header" android:layout_height="55dip" android:scrollbars="none" android:id="@+id/tabsButtonView"> <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="0dip" android:paddingTop="5dip" android:paddingLeft="3dip"> <ImageButton android:src="@drawable/linkup_logo_small" android:id="@+id/tabBtt0" android:layout_width="wrap_content" android:layout_marginLeft="2dip" android:layout_marginRight="2dip" android:layout_height="fill_parent" android:padding="5dip" android:background="@drawable/tab_selected"></ImageButton> <ImageButton android:src="@drawable/simplyhired_small" android:id="@+id/tabBtt1" android:layout_height="fill_parent" android:layout_width="fill_parent" android:layout_marginLeft="2dip" android:layout_marginRight="2dip" android:padding="5dip" android:background="@drawable/tab_normal"></ImageButton> <ImageButton android:src="@drawable/indeedcom_small" android:id="@+id/tabBtt2" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5dip" android:layout_marginLeft="2dip" android:layout_marginRight="2dip" android:background="@drawable/tab_normal"></ImageButton> <ImageButton android:src="@drawable/careerbuilder_logo_small" android:id="@+id/tabBtt3" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5dip" android:layout_marginLeft="2dip" android:layout_marginRight="2dip" android:background="@drawable/tab_normal"></ImageButton> </TableRow> </TableLayout> </HorizontalScrollView> 

В HorizontalScrollView нет ничего плохого, и автопрокрутка работает отлично. Это была просто последовательность инициализации, которая не срабатывала в моем коде. Дело закрыто.

Intereting Posts