android - setContentView(R.Layout.main) vs startActivity(intent),哪个更常见?

标签 android android-intent android-activity android-view

请告诉我使用startActivity(intent)setContentView(R.Layout.main)
的区别 哪个更好,应该在什么条件下使用?
我想当我们想要执行任何操作时,我们使用 startActivity(intent) 并且只是为了移动到不同的页面,我们使用 setContentView(R.Layout.main)

最佳答案

如果使用startActivity,在新Activity的onCreate中,还要设置contentView()。因此,就时间而言,setContentView 本身更快,因为它不会启动新 Activity 。因此,您的应用将更快地显示新屏幕...

另一方面,如果您调用 startActivity,此 Activity 将被放入堆栈,因此您可以通过按后退按钮返回。通过使用 setContentView,您必须手动配置后退按钮以返回到之前的布局...

根据应用程序的类型,您必须确定最适合您的。 例如,chrome-to-phone 源代码显示谷歌在应用程序的完整设置阶段使用 setContentView。它更快,他们在屏幕底部放置了后退按钮以返回。按下物理后退按钮将停止 Activity 。通过这种方法,他们可以在多个屏幕上使用一个 Activity 来收集完成设置所需的所有信息。

设置完成后,Google 会切换到 startActivity 方法,以执行不同的操作。在这里,应用程序针对用户可以执行的不同任务使用不同的 Activity 。每个 Activity 都是一种独立的 Activity ,后退按钮允许在它们之间快速切换。

希望这能为您指明正确的方向

关于android - setContentView(R.Layout.main) vs startActivity(intent),哪个更常见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5617291/

相关文章:

java - Android Post 请求未在服务器上发布任何数据

android - 使用权重设置 DrawerLayout 宽度?

java - 当您跳转到下一个 Activity 时如何销毁先前的 Activity

java - Android:如何为 Activity.onNewIntent() 设置监听器?

java - 需要帮助在 Activity 之间切换

android - MediatorLiveData在addSource观察到的LiveData返回之前调用旧数据

Android Studio 启动时修改./idea/vcs.xml

android - 如何传递包含对象列表的可打包对象?

android - 是否可以使用我的联系人应用程序启动选项以在单击 Android 图标时选择?

android - editTexts 在旋转设备时更改其值