web-dev-qa-db-ja.com

レイアウトで子のインデックスを返す方法は?

私は次の状況にあります-Horizo​​ntalScrollView(HSV)、HSV内-LinearLayoutおよびその中にボタンの数-コードはここにあります:

<HorizontalScrollView
        Android:id="@+id/Footer"
        Android:orientation="horizontal"
        Android:layout_width="fill_parent"
        Android:layout_height="0dp"
        Android:layout_weight="1.5"
        Android:background="@drawable/footer_bg"
        Android:scrollbars="none"
        Android:fadingEdge="none"
        >

        <LinearLayout
            Android:id="@+id/hsvLinearLayout"
            Android:orientation="horizontal"
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent"
            >

            <Button
                Android:id="@+id/today"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/today"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/today"
                Android:onClick="getRSSNews"
                />

            <Button
                Android:id="@+id/life"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/life"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/life"
                Android:onClick="getRSSNews"
                />

            <Button
                Android:id="@+id/corner"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/corner"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/corner"
                Android:onClick="getRSSNews"
                />

            <Button
                Android:id="@+id/banks"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/banks"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/banks"
                Android:onClick="getRSSNews"
                />

            <Button
                Android:id="@+id/it"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/it"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/it"
                Android:onClick="getRSSNews"
                />

            <Button
                Android:id="@+id/fun"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:drawableTop="@drawable/fun"
                Android:drawablePadding="0sp"
                Android:gravity="center_horizontal|bottom"
                Android:textSize="8sp"
                Android:text="@string/fun"
                Android:onClick="getRSSNews"
                />

        </LinearLayout>

    </HorizontalScrollView>

クリックされたボタンの位置(インデックス)を取得する方法はありますか?

24
nenito

indexOfChild 指定された子ビューのグループ内の位置を返します。

82
xevincent

各ビューにタグを付けて、そのビューがクリックされたときにタグを確認することができます。これは役立つ場合があります。

6
Pooja M. Bohora