4

Horizo​​ntalScrollView が右から左に動作するように設定するにはどうすればよいですか? デフォルトの動作では、最初のタブ (デフォルトのタブ) が左側から表示されます。タブを逆順に並べ替えて、最初の「デフォルト」タブが画面の右側に表示されるようにします。

それ、どうやったら出来るの?私はlayout_gravityを使用しましたが、うまくいきませんでした..

tabhost と Horizo​​ntalScrollView を含む私のレイアウトコードは次のとおりです。

<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:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <HorizontalScrollView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true"
        android:scrollbars="none">

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    </HorizontalScrollView>

    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
</LinearLayout>

</TabHost>
4

2 に答える 2

3

機能する1つの回避策:

final HorizontalScrollView view = (HorizontalScrollView) findViewById(R.id.scroller);
        view.postDelayed(new Runnable() {

            @Override
            public void run() {
                view.fullScroll(HorizontalScrollView.FOCUS_RIGHT);
            }
        }, 10);

アイデアは、プログラムによるスクロールが機能するには遅延が必要であるということです。

于 2014-08-18T13:38:50.450 に答える