2

私は水平スクロール ビューを持っています。このスクロール ビューの幅を知る必要があります。Web で見つけたすべてのソリューションを試しましたが、結果は同じでした: 0. スクロール ビュー:

<HorizontalScrollView
    android:id="@+id/hsvMain"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:background="@android:color/black"
    android:scrollbars="none" >

    <LinearLayout
        android:id="@+id/lyt_bultens"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scrollbars="horizontal" >

        <TextView
            android:id="@+id/tvBultenMain"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:lines="2"
            android:text="Bülten bulunamadı."
            android:textColor="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/tv2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:lines="2"
            android:text="Bülten bulunamadı."
            android:textColor="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge" />

    </LinearLayout>
</HorizontalScrollView>

私はすでに試しました:

toDeltaX = hsv.getChildAt(0).getMeasuredWidth();
toDeltaX = hsv.getChildAt(0).getRight();
toDeltaX = hsv.getChildAt(0).getWidth();
toDeltaX = hsv.getMeasuredWidth();
toDeltaX = hsv.getRight();
toDeltaX = hsv.getWidth();

int index = lytBultens.getChildCount() - 1;
View view = lytBultens.getChildAt(index);
toDeltaX = view.getRight();

助けてください。

4

2 に答える 2

0

それは非常に簡単です: 次のコードを試してください:

ScrollView myScrollView = (ScrollView) findViewById(R.id.hsvMain);
myScrollView = (FrameLayout.LayoutParams) myScrollView .getLayoutParams();
Float width = myScrollView .width;

乾杯 !

于 2013-07-24T11:14:56.683 に答える