首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我怎样才能回到之前的2屏幕Android?

我怎样才能回到之前的2屏幕Android?
EN

Stack Overflow用户
提问于 2022-03-17 18:47:57
回答 2查看 211关注 0票数 0

这就是场景:我有3页,第一页A是主页,使用splash,第二页是B页,第三页是C页。我想从C导航到A,但我不想看到飞溅。我不想看到飞溅,但当我打开一页,飞溅总是来。我不想删除飞溅。

我尝试了一些代码,例如:

1-意图goScreen.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP goScreen =新意图(C.this或this@C,A.class);startActivity(gotoScreenVar);

2-val意图=意图(此@A,C::class.java) startActivity(意图).

EN

回答 2

Stack Overflow用户

发布于 2022-03-17 19:04:13

创建此扩展属性:

代码语言:javascript
运行
复制
val Activity.isLaunchedFromHomeScreen: Boolean
    get() = intent?.let {
        it.action == Intent.ACTION_MAIN &&
                it.categories.orEmpty().contains(Intent.CATEGORY_LAUNCHER)
    } ?: false

然后,在活动A中,您可以检查这个布尔值,以决定是否显示水花。

但我提醒你不要用这种方式创建一个溅屏。现在Android 12已经内置了启动屏幕,你的应用程序将在Android 12和更高版本上显示两个启动屏幕。您可能希望使用溅屏库来创建一个在所有版本的安卓系统中都能一致工作的系统。或者创建另一个属性来决定只在低于Android 11的版本上显示您的实现:

代码语言:javascript
运行
复制
val shouldShowSplashScreen: Boolean 
    get() = isLaunchedFromHomeScreen && Build.VERSION.SDK_INT < Build.VERSION_CODES.R
票数 0
EN

Stack Overflow用户

发布于 2022-03-17 19:04:23

在从活动C导航到活动A时,可以将一些数据传递给意图。喜欢

代码语言:javascript
运行
复制
intent.putBoolean("shouldHideSplash", true);

在活动A中,你可以检查意图是否有shouldHideSplash,--你可以跳过飞溅,可以做任何你想做的事情。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71517571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档