为什么切换到不同的视图会还原另一个视图中的更改?

Why does switching to a different view revert changes in another view?

我有三个可以水平滑动的视图。长按后,所有三个视图的配色方案都应变为黑色和白色。但是,当我从最后一页滑动到第一页并再次返回时,长按所做的更改将被还原。为什么会这样?我有很多关于这三个视图的代码,所以如果您认为需要任何代码,请告诉我。谢谢。

因为你只有 3 个视图,你可以安全地调用这个:

mViewPager.setOffscreenPageLimit(3);

因此,当从第一个滑动到最后一个再返回时,寻呼机将保持视图(不会破坏并重新创建它们)。

您的幻灯片(页面)根视图应该有一个 id,然后 android 将保存该视图,稍后将能够重新创建它。例如这里:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/content"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

    <TextView style="?android:textAppearanceMedium"
              android:padding="16dp"
              android:lineSpacingMultiplier="1.2"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:text="@string/lorem_ipsum" />
</ScrollView>

android:id="@+id/content" 很重要。