gpt4 book ai didi

android - 操作系统终止我的 Activity 后,SlidingUpPanelLayout 不会在恢复时崩溃

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:14:10 26 4
gpt4 key购买 nike

我使用的是 SlidingUpPanelLayout 库的最新版本 (3.0)。如果 Android 操作系统在后台运行,它会定期终止我的 Activity(通过按 Home 而不是 Back 退出)。如果发生这种情况,并且面板在用户最后一次使用该应用程序时展开,那么面板在创建时仍会展开,但其中的所有内容都将消失。基本上是一个空白屏幕。

在这种情况下,我实际上想将 Activity 重置为其初始状态(完全退出后打开),该状态已折叠。但我无法让它发挥作用。在布局 xml 中,我将初始状态设置为折叠。

<com.sothree.slidinguppanel.SlidingUpPanelLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:sothree="http://schemas.android.com/apk/res-auto"
android:id="@+id/sliding_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
sothree:umanoPanelHeight="48dp"
sothree:umanoShadowHeight="4dp"
sothree:umanoInitialState="collapsed" >

我也放了这条线

slidingUpPanelLayout.setPanelState(PanelState.COLLAPSED);

在 onCreate() 的一些地方,但面板没有折叠。我在每次尝试折叠之前和之后打印面板状态,发现 panelState 实际上设置为折叠,甚至在第一次尝试折叠之前,即使它显然没有折叠。

这是库中的错误,还是我做错了什么。

感谢您的帮助。

最佳答案

您需要覆盖 onResume 事件,然后调用折叠 Action 。下面的代码应该可以完成工作:

@Override
protected void onResume() {
super.onResume();
slidingUpPanelLayout.setPanelState(PanelState.COLLAPSED);
}

关于android - 操作系统终止我的 Activity 后,SlidingUpPanelLayout 不会在恢复时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28616430/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com