Android: проблема с Tabhost (Tabwidget) с несколькими вкладками

У меня есть пять вкладок в моем списке, вы можете увидеть три первые вкладки при запуске TabActivity, а затем, если я прокрутлю вправо, также появятся две другие. У меня проблема в том, что следующие две вкладки нужно дважды нажать, чтобы начать, и наоборот для первых двух вкладок, если на экране отображаются три последние вкладки.

Пожалуйста, если кто-нибудь знает, как решить эту надоедливую вещь, я был бы признателен.

Заранее спасибо!

РЕДАКТИРОВАТЬ:

Я обнаружил, что настоящая проблема заключается в том, что когда я прокручиваю до конца (влево или вправо), что приводит к двойному нажатию любой вкладки, чтобы она работала, кто-то знает это? Я обнаружил, что его можно нажать один раз при прокрутке до конца (вправо или влево), но только через 3 секунды. Если я нажму сразу, для работы нужно нажать еще раз.

Мой код (xml):

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <HorizontalScrollView
        android:id="@+id/scroll"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:scrollbars="none">
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#000000"/>
    </HorizontalScrollView>
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
</LinearLayout>


person Carnal    schedule 23.10.2011    source источник


Ответы (2)


Вы хотели попробовать ViewFlipper (как в новом Android Market).

Вот весь код,

Установить страницу по умолчанию для ViewPager в Android

person dcanh121    schedule 27.10.2011

Похоже, вы можете потерять фокус на вкладках.

Вы пытались реализовать:

android.view.ViewTreeObserver.OnScrollChangedListener

И вернуть фокус на TabHost, когда это сработает?

Вы также можете попробовать поиграть с setOverScrollMode() в своем TabHost.

person zdp    schedule 27.10.2011
comment
Я сделал свой собственный вид прокрутки следующим образом: /3948934/ - person Carnal; 28.10.2011
comment
И затем я определяю, когда прокрутка находится в самом полном правом углу, и устанавливаюFocusable(true) в tabhost, tabwidget и даже на каждой вкладке. Все еще не работает. - person Carnal; 28.10.2011