视频地址:

http://study.163.com/course/courseMain.htm?courseId=207001

课时22  Activity生命周期(一)

1、如何在一个应用中添加新的activity

第一步:添加一个activity子类(新建class,继承Activity,添加onCreate方法)

右键sourse里面的override/implement methods可以自动添加onCreate方法。

第二步:在res/layout/下面添加布局文件xml

第三步:在新的activity里面绑定布局文件

第四步:在主配置文件AndroidManifest.xml中配置activity

直接模仿系统自动生成的那个写就行,注意<intent-filter></intent-filter>是声明主要的activity。Label是在app页面最上面那个标签。

2、启动activity

这样可以从MainActivity跳到NewActivity。

3、back stack

回收栈,每次都是显示栈顶的Activity。

课时23  Activity生命周期(二)

1、Activity的生命周期

以从Activity:A到Activity:B为例,调用如下——

打开A:

A.OnCreate  A.OnStart     A.OnResume

点击A中的按钮跳到B:

A.onPause    B.OnCreate  B.OnStart     B.OnResume              A.onStop

点击后退按钮,B要从back stack中弹出并销毁

B.onPause    A.OnRestart A.OnStart     A.OnResume              B.OnStop      B.OnDestroy

课时24  Activity生命周期(三)

1、Activity对象的状态

(1)Resumed:Activity对象处于运行状态;

(2)Paused:另一个Activity位于前段,但是本Activity还可见;

(3)Stopped:另一个Activity位于前段,完全遮挡本Activity;

2、成对的生命周期函数

OnStart OnStop

OnResume OnPause

OnCreat OnDestroy

课时25   Intent对象初步

1、使用Intent对象传递数据步骤:

第一步:在Activity:A中生成Intent对象

按照前面的生成activity的方法。

第二步:使用putExtra()向Intent对象存储数据

有几个注意点:

(1)由注释可以键值一定要加上包名。

(2)putExtra()方法是有很多重载的,可以根据需要选择,但是,结构都是键-值。

第三步:在Activity:B使用getXXXExtra()系列从Intent对象当中取出数据

有几个注意点:

(1)其中XXX要根据需要,比如在进入的Activity压入的是String,所以是getStringExtra,如果是boolean就是getBooleanExtra,以此类推,可以自己找。

(2)有的可以有默认值,比如getIntExtra参数有两个,第一个是键名,第二个是默认值,意思是如果键值不存在,就使用默认值。

课时26  Android当中的线程

1、在UI线程之外是不能修改UI的。所以谁创建view谁才能去修改它。除非几个比较特别的如ProgressBar的setProgress()方法等等,大多数是不允许的。

2、

主线程:MainThread

在一个应用程序中,主线程用于获取用户的输入以及把运算结果反馈给用户,所以主线程是不能阻塞的,阻塞就会出现手机偶尔会出现的那样,“程序停止响应”,就是阻塞了,需要等待。

其他线程:WorkThread

对于一些可能会产生阻塞的,比如大文件读取之类的,就必须放在WorkThread中。(和Java多线程实现方法一样)。

所以问题就是WorkThread和MainThread如何通信,将在以后讲。

【Android学习】《Android开发视频教程》第二季笔记(未完待续)的更多相关文章

  1. Go web编程学习笔记——未完待续

    1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...

  2. jQuery 学习笔记(未完待续)

    一.jQuery概述    宗旨: Write Less, Do More.    基础知识:        1.符号$代替document.getElementById()函数        2.使 ...

  3. linux学习笔记---未完待续,缓慢更新

    做为linux菜鸟,由于work的需要,慢慢的开始接触学习linux. <鸟哥的linux私房菜>学习笔记. 一.基础命令操作 1.显示日期的命令 date 执行date命令后,显示结果为 ...

  4. Greys学习笔记(未完待续)

    Greys介绍 greys-anatomy是一个Java线上诊断工具,取名来自美剧<实习医生格雷>,由菜鸟-杜琨同学开发维护.比我们常用的脚本工具btrace提供更多的功能,greys采用 ...

  5. Java学习笔记(未完待续)

    变量的作用域(scope)是指变量可以在程序中引用的范围.在方法中定义的变量称为局部变量(local variable).局部变量的作用域从声明变量的地方开始,直到包含该变量的块结束为止.局部变量都必 ...

  6. oracle-绑定变量学习笔记(未完待续)

    --定义变量SQL> var a number; --给绑定变量赋值SQL> exec :a :=123; PL/SQL procedure successfully completed. ...

  7. iOS开发——设备信息小结(未完待续...)

    1.获取设备的信息  UIDevice *device = [[UIDevice alloc] init]; NSString *name = device.name;       //获取设备所有者 ...

  8. iOS开发系统版本适配(未完待续。。。)

    1.iOS9引入了新特性App Transport Security (ATS).新特性要求App内访问的网络必须使用HTTPS协议:iOS9系统发送的网络请求将统一使用TLS 1.2 SSL.采用T ...

  9. Java并发笔记-未完待续待详解

    为什么需要并行? – 业务要求 – 性能 并行计算还出于业务模型的需要 – 并不是为了提高系统性能,而是确实在业务上需要多个执行单元. – 比如HTTP服务器,为每一个Socket连接新建一个处理线程 ...

  10. 大熊君JavaScript插件化开发------(第二季)

    一,开篇分析 Hi,大家好!大熊君又和大家见面了,还记得昨天的那篇文章吗------这个系列的开篇(第一季).主要讲述了以“jQuery的方式如何开发插件”, 那么今天我们带着昨天的疑问来继续我们的插 ...

随机推荐

  1. Java程序设计之线程池应用

    这里简单说一个线程池的小应用,从控制台输入线程访问的线程数量,输出输出工作的线程名,之前先构造一个包含了5条线程的对象. 代码: import java.util.Scanner; import ja ...

  2. webService获取电话号归属地和获取天气情况步骤,及创建属于自己的webservice

    一.什么是Web服务 Web服务是一种可以用来解决跨网络应用集成问题的开发模式,目的是保证不同平台的应用服务可以互操作 二.Web服务的三个核心 Soap: SOAP(Simple Object Ac ...

  3. angular监听

    监听中第三个参数,何时使用true? true的意思是“深度监听” 1.当监听对象属性变化时,而你监听的对象写得是对象,此时要用深度监听true: 2....... 监听耗资源,用完关闭 var wa ...

  4. sqlmap常用技巧

    http://nanshihui.github.io/2016/02/25/sqlmaptips/

  5. BZOJ 1853 【Scoi2010】 幸运数字

    Description 在中国,很多人都把6和8视为是幸运数字!lxhgww也这样认 为,于是他定义自己的"幸运号码"是十进制表示中只包含数字6和8的那些号码,比如68,666,8 ...

  6. 初试Scala解析XML

    使用Scala解析XML,充分体现了函数式编程的特点,简洁和明了.用Java去解析不是不行,只不过代码不够清晰明了. 首先先把XML文件读入到内存里: val someXml = XML.loadFi ...

  7. 简单CSS3实现炫酷读者墙

    如题,给大家介绍和讲解几个常用的CSS3属性,并用到实处. 先看demo(请使用Chrome或者Firefox浏览,IE的靠边): 点此查看实例 觉得爽的可以继续阅读下面的知识点,感觉不爽的可绕行. ...

  8. 86 ipmitools-查看硬件信息工具

    1.简介 IPMI(Intelligent Platform Management Interface)即智能平台管理接口是使硬件管理具备"智能化"的新一代通用接口标准.用户可以利 ...

  9. PHP7中php.ini、php-fpm和www.conf的配置

    引自:https://typecodes.com/web/php7configure.html 1 配置php.ini php.ini是php运行核心配置文件: ######避免PHP信息暴露在htt ...

  10. 上传AppStore出现:Unexpected CFBundleExecutable Key 错误

    解决办法:就是把无用的CFBundle删除掉. 根据提示,找到对应第三方的SDK, 找到第三方的info.plist文件,删除里面的Executable file对应的一整行,包括值.