Android Developer Training

Android Developer Training

5 (4人评价)
  • Starting an Activity的笔记

    Android实战学习群482189902。热心免费提供解答,来的都送一套入门到高级实战的教程。帮助新手快速入门。

  • Stopping and Restarting an Activity的笔记

    关闭和重启应该在你的Activity当中是一个很重要的流程,因为它或许让你的用户感觉到你的app总是活跃的并且不会失去他们的进展。下面介绍一些你的Activity会关闭和重启时主要情况:当用户打开最近使用app窗口,并且从你的app转到使用另一个app。你的app中当前在前台运行的Activity会被stop。如果用户从主界面或最近使用app窗口上点击你的app的图标,那么,那些被stop的Activity会重新启动。当用户在你的app中执行开启一个新的Activity的操作,当前的Activity会被stop。如果用户点击返回按钮,那么,被stop的 Activity会被重启。当用户在使用你的app时接到一个电话。Activity类提供了两种生命周期方法,分别是 onStop()和onRestart(),这两种方法让你能够准确地编写你的Activity崽遇到stopped和restarted的情况时,该如何操作。不同于paused状态的是,stopped状态必须保证当前Activity的用户界面完全不可见,并且用户焦点在另一个单独的Activity(或者一个完全单独的app),而paused状态只需要识别到当前的用户界面被局部遮掩。注解:因为当你的Activity被stop时,系统会保留你的Activity的实例,所以,或许你不需要实现onStop() 和onRestart() 方法(甚至onStart()方法也不必实现。因为大多数Activity比较简单,你只需要使用onPause()方法来暂停进行中的活动和从系统资源断开)图Figure 1. 当用户退出你的Activity,系统会调用onStop()方法来关闭Activity(1)。之后,如果用户返回你的Activity,系统调用onRestart()方法(2),紧接着调用onStart()方法(3),再接着调用onResume() 方法(4)。于是我们注意到,无论是什么情况让Activity关闭,系统总是先调用onPause()方法,再调用onStop()方法来关闭Activity。Stop Your Activity当你的Activity调用onStop()方法时,那么,它就不再可见,并且释放此时用户不需要用到的所有资源。一旦你的Activity处于stopped状态,如果当系统需要恢复系统内存时,系统可能会销毁你的Activity中的实例。在极端情况下,系统甚至会在 without calling the activity's final onDestroy() callback的情况下直接终止你的应用进程。因此,调用onStop()方法来释放资源是非常重要的。虽然onPause()方法在onStop()方法之前调用,但是你应该在onStop()方法中去执行较大的,较占用CPU性能的操作,比如写入数据库操作就应该在onStop()中执行。举个例子,下面这个onStop()方法实现了将草稿内容持久性的存储:代码当你的Activity被是stop,你的Activity对象被保存在内存中,并且当它resumes时,它会被召回。You don’t need to re-initialize components that were created during any of the callback methods leading up to the Resumed state. 系统也会跟踪layout中每个View的当前状态,所以,如果用户输入文本到文本框中,内容会被保留,因此你不需要主动保存和恢复它。Note:即使当你的Activity处于stopped状态时,系统销毁了它,它仍然将View对象(比如EditText中的文本内容)的状态保留在Bundle里(一个bolb键值对),并且在用户导航回你的Activity的相同的实例时会被恢复。(下一节课程将会讲到更多关于使用Bundle来存储其他状态的数据来以防万一你的Activity被销毁和重新创建)Start/Restart Your Activity 

  • Pausing and Resuming an Activity的笔记

    Resume Your Activity当你的Activity从Paused恢复到Resumed状态时,系统会调用onResume()方法。要知道的是,每当系统调用这个方法时,你的Activity都会来到前台运行,包括activity被第一次创建时。同样地,你应该在onResume()方法中初始化你在onPause()方法中释放掉的组件,并且执行每次进入这个Activity时所必须出现的内容(比如进入时的动画和只有在获取用户焦点时初始化的组件)。下面这个onResume()的例子与上面的onPause() 的例子相对应,因此,它初始化了在onPause() 中释放的camera。 

  • Starting an Activity的笔记

    for an extended period of time持续一段较长的时间

  • Starting an Activity的笔记

    illustration   说明   注解  插图call  back 回调   回收信号resume    重新开始implement  n. 工具,器具;手段               vt. 实施,执行;实现,使生效app   应用 landscape and portrait orientation.横向和纵向方向。transitions   过渡  转变static 静止的;停滞的default project  默认项目 

  • Stopping and Restarting an Activity的笔记

    Notice that no matter what scenario causes the activity to stop, the system always calls onPause() before calling onStop()

  • Recreating an Activity的笔记

    Your activity will be destroyed and recreated each time the user rotates the screen. The saved data that system uses to restore the previous state is called the "instance state" and is a collection of key-value pairs stored in a bundle object. 

你感兴趣的课程

8万+浏览/ 916学员/ 4.5评分
免费
6万+浏览/ 177学员/ 5评分
免费
6万+浏览/ 971学员/ 4.8评分
免费