没有 onStart() 是否可以 运行 一个 Android 应用程序?
Is it possible to run an Android app without onStart()?
我是 Android 的新手,我刚刚了解 Activity 生命周期。
到目前为止,在我制作的所有用于练习的应用程序中,我都没有使用 onStart()
方法(主要是因为我不知道它)并且这些应用程序运行得非常好。
为什么它们工作得很好?
那么我什么时候必须在我的应用程序中显式编写 onStart()
方法?
那是因为您的活动是 Activity 或 AppCompatActivity 的子类。您无需重写此方法即可使 activity 正常工作。如果您想知道何时使用该方法,您可以查看此 post:
android: when to use onStart(), onStop()?
创建时
在创建 activity 时调用,然后再也不会调用。除非你再打开activity。
开始时
在创建 activity 时调用,并且在每次恢复 activity 时再次调用(如果您 return 使用后退按钮返回)。
例子
假设我们想要显示一条吐司消息,我们将其命名为 "message"。
第一种情况
如果我们只想在创建 activity 时显示 "message" 我们在 Oncreate 中添加吐司,这就是发生的事情
如果打开 activity A ----> 将调用 Oncreate -----> 显示 "message" -----> 调用 Onstart ------>什么都没发生
如果你从 A 打开另一个 activity B 然后按回 ----> onCreate 被忽略 -----> onStart 被触发 -----> 没有任何反应。
((所以当您创建 ACTIVITY) 时,消息只显示一次)。
第二种情况
如果我们想在每次显示 activity 或每次它变得可见时显示 "message",我们在 onStart 中添加 toast,这会发生什么:
如果你打开 activity A ----> Oncreate 将被调用 -----> 没有任何反应-----> Onstart 被调用 -----> "message"已显示
如果你从 A 打开另一个 activity B 然后按回 ----> onCreate 被忽略 -----> onStart 被触发 -----> "message" 再次显示.
((所以这里会在我们创建 ACTIVITY 和返回它时显示消息))。
这就是为什么启动并不总是对应用运行很重要的原因。
我是 Android 的新手,我刚刚了解 Activity 生命周期。
到目前为止,在我制作的所有用于练习的应用程序中,我都没有使用 onStart()
方法(主要是因为我不知道它)并且这些应用程序运行得非常好。
为什么它们工作得很好?
那么我什么时候必须在我的应用程序中显式编写 onStart()
方法?
那是因为您的活动是 Activity 或 AppCompatActivity 的子类。您无需重写此方法即可使 activity 正常工作。如果您想知道何时使用该方法,您可以查看此 post:
android: when to use onStart(), onStop()?
创建时
在创建 activity 时调用,然后再也不会调用。除非你再打开activity。
开始时
在创建 activity 时调用,并且在每次恢复 activity 时再次调用(如果您 return 使用后退按钮返回)。
例子
假设我们想要显示一条吐司消息,我们将其命名为 "message"。
第一种情况
如果我们只想在创建 activity 时显示 "message" 我们在 Oncreate 中添加吐司,这就是发生的事情
如果打开 activity A ----> 将调用 Oncreate -----> 显示 "message" -----> 调用 Onstart ------>什么都没发生
如果你从 A 打开另一个 activity B 然后按回 ----> onCreate 被忽略 -----> onStart 被触发 -----> 没有任何反应。
((所以当您创建 ACTIVITY) 时,消息只显示一次)。
第二种情况
如果我们想在每次显示 activity 或每次它变得可见时显示 "message",我们在 onStart 中添加 toast,这会发生什么:
如果你打开 activity A ----> Oncreate 将被调用 -----> 没有任何反应-----> Onstart 被调用 -----> "message"已显示
如果你从 A 打开另一个 activity B 然后按回 ----> onCreate 被忽略 -----> onStart 被触发 -----> "message" 再次显示.
((所以这里会在我们创建 ACTIVITY 和返回它时显示消息))。
这就是为什么启动并不总是对应用运行很重要的原因。