Android-прокрутка с изображением не работает - PullRequest
0 голосов
/ 14 января 2019

У меня есть вид прокрутки и изображения. это выглядит так:

<ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fillViewport="true"
            android:layout_centerInParent="true">

            <ImageView
                android:id="@+id/theImage"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:scaleType="centerCrop" />

        </ScrollView>

и я устанавливаю фон изображения динамически так: Растровое изображение bmp;

String fileName = Utils.PATH + "/" + getIntent().getStringExtra(Utils.FILE_NAME_ON_INTENT);
bmp = Utils.decodeFile(this, fileName);
theImage.setImageBitmap(bmp);

поэтому я вижу изображение внутри прокрутки, но по какой-то причине оно не прокручивается. и если я поставлю изображение фона так:

int img = R.drawable.some_image;
        theImage.setImageResource(img);

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

так есть ли способ заставить его прокручиваться с набором как растровое изображение?

1 Ответ

0 голосов
/ 14 января 2019

Прежде всего используйте NestedScrollView в качестве вида прокрутки. Во-вторых, попробуйте это:

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical">

            <View
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"/>

            <ImageView
                android:id="@+id/theImage"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:scaleType="centerCrop" />

            <View
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"/>

        </LinearLayout>

    </NestedScrollView>
</FrameLayout>

Надеюсь, это поможет.

...