zoukankan      html  css  js  c++  java
  • 05 Activity知识

    1.Activity
        
        >概念:活动面板   应用程序组件  可以绘制Ui界面  可以和用户进行交互
        默认展示全屏  其他情况 界面比其他窗口小  悬浮在其他窗口上方

        >创建一个Activity
            >1,创建一个类继承Activity
            >2,给Activity 添加生命周期方法  oncreate()
            >3,要在清单文件进行注册 ,Application里进行注册 <activity name="包名.类名">

    2.启动其他的Activity

        >
         * 得到Intent(意图对象)  Activity   Fragment Service   BroadCastReceiver
         * 参数1:上下文对象       当前是Activity
         * 参数2:目标Activity   SecondActivity.class
    传值方式:4种
        3.Intent传值
            >1,直接进行传值   传基本数据类型
            >2,通过Bundle对象  传递基本数据类型
            >3,直接传递对象    对象要进行序列化
            >4,通过Bundle对象   传递Object对象   对象要进行序列化

        4,startActivityForResult传值
            >1,使用startActivityForResult(intent, REQUEST_CODE); 启动intent
            >2,在另一个Activity中    setResult(RESULT_CODE, intent); 返回数据
            >3,在当前Activity中  onActivityResult()方法中处理结果
        
        5.使用Application 实现传值功能  
            application:代表应用程序
            >1,自己创建一个Application  在清单文件中替换原有的Application
            >2,在某一个Activity中Application里的内容 设置值 ,在另一个Activity中  获取值
        6,静态变量传值(Android不建议使用)(了解)
         
    6.Activity的生命周期******************

        >
        /**
         * 程序第一次启动时调用
         * 作用:加载界面  初始化控件  事件监听
         */

        protected void onCreate(Bundle savedInstanceState)     
        /**
         * Ui界面显示时调用   ,用户没有获取焦点
         */
        protected void onStart() {
        /**
         * 用户获取焦点时 调用      重新获取数据
         */
        protected void onResume() {
        /**
         * 用户失去焦点时调用
         */
        protected void onPause() {
     
        /**
         * 用户界面被完全遮挡
         */
        protected void onStop() {

        /**
         * 界面被完全遮盖之后  从新回到当前的Activity
         */
        protected void onRestart() {
     
        /**
         * Activity被销毁时调用   关闭资源
         */
        protected void onDestroy() {
     

        >进入到第一个Activity
        08-26 08:33:30.255: E/MainActivity(1492): =====onCreate========
        08-26 08:33:30.255: E/MainActivity(1492): =====onStart========
        08-26 08:33:30.255: E/MainActivity(1492): =====onResume========
        >从第一个Activity进入到第二个Activity
        08-26 08:34:01.895: E/MainActivity(1492): =====onPause========
        08-26 08:34:02.306: E/SecondActivity(1492): =====onCreate========
        08-26 08:34:02.315: E/SecondActivity(1492): =====onStart========
        08-26 08:34:02.315: E/SecondActivity(1492): =====onResume========
        08-26 08:34:03.626: E/MainActivity(1492): =====onStop========
        >点击返回按钮  第二个Activity返回到第一个Activity
        08-26 08:34:35.185: E/SecondActivity(1492): =====onPause========
        08-26 08:34:35.215: E/MainActivity(1492): =====onRestart========
        08-26 08:34:35.215: E/MainActivity(1492): =====onStart========
        08-26 08:34:35.226: E/MainActivity(1492): =====onResume========
        08-26 08:34:36.065: E/SecondActivity(1492): =====onStop========
        08-26 08:34:36.065: E/SecondActivity(1492): =====onDestroy========
        >在点击返回按钮  从第一个界面返回到桌面
        08-26 08:35:22.876: E/MainActivity(1492): =====onPause========
        08-26 08:35:24.225: E/MainActivity(1492): =====onStop========
        08-26 08:35:24.225: E/MainActivity(1492): =====onDestroy========


    7,Activity现场保护
        >存数据:onSaveInstanceState()
        >取数据:
            >1,//方法一;   在onCreate()
                
            >2,//方法二; onRestoreInstanceState()       
  • 相关阅读:
    第七十一课 图的定义与操作
    第七十课 二叉树经典面试题分析
    第六十九课 二叉树的线索化实现
    第六十八课 二叉树的比较与相加
    第六十七课 二叉树的典型遍历方式
    第六十六课 二叉树结构的层次遍历
    第六十五课 二叉树中属性操作的实现
    2018华为笔试题
    交错01串
    操作序列(网易)
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152303.html
Copyright © 2011-2022 走看看