zoukankan      html  css  js  c++  java
  • Android周学习Step By Step(7)Activity简介

    Activity可以算是Android开发者遇到最频繁,也是最基本的模块之一。在Android的程序当中,Activity一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Activity就相当于一个网页。在Activity当中,我们可以添加一些Button元素,或者Check box当。可以看到Activity之间可以进行互相跳转,例如,按下一个Button按钮后,可能会跳转到其他的Activity。和网页跳转稍微有些不一样的是,Activity之间的跳转有可能返回值,例如,从Activity A跳转到Activity B,那么当Activity B运行结束的时候,可能会给Activity A一个返回值。这样做在很多时候是相当方便了。

    当打开一个新的屏幕时,之前一个屏幕会被置为暂停状态,并且压入历史堆栈中。用户可以通过回退操作返回到以前打开过的屏幕。我们可以选择性的一处一些没有必要保留的屏幕,应为Android会把每个应用的开始到当前的每个屏幕保存在堆栈中。

    Activity是由Android系统进行维护的,它也有自己的生命周期,即它的一个产生、运行、销毁的一个周期……了解Activity的生命周期对程序的设计编写是非常有益的。

    ---Android 开发与实战

    image

    1onCreate()

    Activity创建时被调用。

    该函数在Acitvity生命周期中只被调用一次。

    拥有一个参数,或者为null,或者是通过函数onSaveInstanceState()预先保存的状态信息。

    2onStart()

    Activity即将显示给用户时被调用。

    3onResume()

    Activity可以与用户交互时被调用。

    如果需要播放音乐或者动画,该函数最佳。

    4onPause()

    Activity将要进入后台时被调用。

    通常是一个新的Activity启动并显示时,这时需要保存程序持久化数据,比如正在编辑的数据记录。

    5onStop()

    Activity不在可见并且在一段时间内不会需要时调用。

    如果内存紧张,该函数可能永远不会调用,系统会直接结束掉进程。

    6onRestart()

    ActivityStop状态重新转为可见状态时被调用。

    7onDestroy()

    Activity被销毁前被调用。

    内存紧张时,该函数可能永远不会被调用,系统会直接结束掉进程。

  • 相关阅读:
    swagger Unable to render this definition
    企业应用向ASP.NET Core迁移
    .NET Core EF框架使用SQL server 2008数据库分页问题:Incorrect syntax near 'OFFSET'. Invalid usage of the option NEXT in the FETCH statement
    .NET Core应用中使用分布式缓存及内存缓存
    .NET Core Session的使用方法
    .NET Core 2.1中的HttpClientFactory最佳实践
    转载:ZooKeeper Programmer's Guide(中文翻译)
    Python【map、reduce、filter】内置函数使用说明(转载)
    Python使用基础
    Redis Sentinel:集群Failover解决方案(转载)
  • 原文地址:https://www.cnblogs.com/beijiguangyong/p/2302760.html
Copyright © 2011-2022 走看看