一.Activity
1.如何在一个应用程序中定义多个Activity:①定义一个类,继承Activity;②在该类当中,复写Activity当中的onCreate方法;③在AndroidManifest.xml文件当中注册该Activity;
2.如何启动一个Activity:①生成一个意图(Intent)对象;②调用setClass方法设置所要启动的Activity;③调用startActivity方法启动Activity
3.Android当中的back stack(返回栈即返回按钮):栈这种数据结构,遵循先进后出的原则,比如说我们有三个Activity,分别是A,B,C我们通过A可以进入B,可以通过B进入C,也就是说A这个Activity是我们的主Activity。那么当我们进入应用程序时,首先映入眼帘的既是A,此刻在back stack中位于栈顶的元素就是A的对象,而当我们通过
A打开B时,在返回栈中就会添加这个B的对象,依次类推!而当我们点击返回按钮的时候,会将栈顶的Activity对象移除,并将其销毁;取而代之的是新的栈顶元素;返回按钮的操作和我们进入一个一个的Activity的顺序刚好是相反的。
4.Activity的生命周期概念:即Activity从创建到消亡的整个过程
5.Activity的生命周期方法:
①onCreate():在Activity对象被创建时调用;
②onStart():当Activity变得可见时调用;
③onResume():当Activity开始准备与用户交互时调用该方法;
④onPause():当系统即将启动另外一个Activity之前调用该方法;
⑤onStop():当前Activity变得不可见时调用该方法;
⑥onDestroy():当前Activity被销毁之前会调用该方法;
⑦onRestart():当一个Activity再次启动之前将会调用该方法;
6.Activity对象的状态:官方声明有三种状态,第一种是Resumed:Activity对象处于运行状态;第二种是Paused:另一个Activity位于前端,但是本Activity还可见;第三种是Stoped:另一个Activity位于前端,完全遮挡本Activity;
二.Intent
1.Intent对象的基本概念:①Intent是Android应用程序组件之一;②Intent对象在Android系统当中表示一种意图;③Intent当中最重要的内容是action与data
2.使用Intent对象传递数据:①使用putExtra()系列方法向Intent对象中存储数据;②使用getExtra()系列方法从Intent对象当中取出数据
三.Android线程
1.线程的两种实现方式:①继承Thread类;②实现Runnable接口;
2.MainThread(即UI线程或主线程)与WorkerThread(负责数据运算):在一个应用程序中,主线程通常用于接收用户的输入,以及将运算的结果反馈给用户,所以说对于一些可能会产生阻塞的操作,必须放置在Worker Thread当中
三.Handler
1.Handler运行的基本原理:涉及Handler,Looper(循环器)和MessageQueue(消息队列,队列这种数据结构遵循先进先出的原则)这三个类,Handler负责把消息对象添加到消息队列中,Looper负责取出添加了的消息对象,Looper调用Handler的handleMessage()方法处理这个消息对象
2.通过Handler实现线程间的通信

android开发之路03的更多相关文章

  1. android开发之路09(浅谈SQLite数据库01)

    1.SQLite数据库: SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. 其特点是高度便携.使 用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同, ...

  2. Toast显示图文界面——Android开发之路1

    Toast的多种使用方法 Toast其实是一个功能特别强大的组件,不仅仅可以吐司一个文本内容,还可以吐司图片以及图文混排的界面.具体用法如下: 第一种:简单的纯文本内容的吐司: Toast.makeT ...

  3. 菜单(Menu)的三中创建方式——Android开发之路2

    菜单的三种创建方式 一.OptionsMenu---选项菜单 Android应用中的菜单默认是隐藏的,只有当用户点击手机上的MENU键,系统才会显示菜单.这种菜单叫做选项菜单(Options Menu ...

  4. Android中隐藏顶部状态栏的那些坑——Android开发之路3

    Android中隐藏顶部状态栏的那些坑 先看看常规的隐藏状态栏的方法: 方法一: @Override protected void onCreate(Bundle savedInstanceState ...

  5. Android中点击隐藏软键盘最佳方法——Android开发之路4

    Android中点击隐藏软键盘最佳方法 实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEve ...

  6. Intent的七大组件——Android开发之路5

    ------Intent------ Android中三个核心组件——Activity.Services.BroadCastProvider都是通过Intent传递参数. startActivity( ...

  7. android开发之路12(android四大组件&Fragment&AsyncTask类)

    一.Activity组件1.简介:Activity组件是Android四大组件之一,通常一个Activity相当于一个用户界面,我们可以通过加载布局文件将Android提供的各种控件及自定义控件显示到 ...

  8. android开发之路13(实际开发常见问题及解决办法ING)

    1.DDMS下无法浏览SDcard? 在做音乐播放器的时候,想通过eclipse中的DDMS视图将音频文件push到sd卡中,发现总是报错 :Failed to push selection: Rea ...

  9. android开发之路11(用SharedPreferences存储数据)

    Android平台给我们提供了一个SharedPreferences类,实际上SharedPreferences处理的就是一个key-value(键值对),它是 一个轻量级的存储类,特别适合用于保存软 ...

随机推荐

  1. oracle 问题若干 提醒注意

    1.Powerdesigner 里生成sql,在oracle中运行时报错:ORA-00907: 缺失右括号 解决:这样的问题很多时候是因为用了不正确的数据类型造成的.比如写作nvarchar(n),但 ...

  2. HDU 1255 覆盖的面积 线段树+扫描线

    同 POJ1151 这次是两次 #include <iostream> #include <algorithm> #include <cstdio> #includ ...

  3. JS注入操作页面对象

    在用selenium webdriver 编写web页面的自动化测试代码时,有时对页面对象的操作需要通过js语句去执行,selenium本身就支持执行js,我们在代码中import org.openq ...

  4. sizeof的作用——解释类中与类之外static变量的情况

    今天看程序员面试宝典的时候遇到一个问题,书上有这么一句话:sizeof计算栈中分配的大小.咋一看这句话的时候,很不理解,难道像函数中类似于static.extern const类型的变量的sizeof ...

  5. Android实例-使用自定义字体文件(XE8+小米2)

    结果: 1.需要修改DELPHI自身的FMX.FontGlyphs.Android.pas,复制到程序的根目录下(红色部分为修改过的). 2.字体文件从 C:\Windows\Fonts 直接拷贝到A ...

  6. js调试工具Console命令详解

    这篇文章主要介绍了js调试工具Console命令详解,需要的朋友可以参考下   一.显示信息的命令 复制代码 代码如下: < !DOCTYPE html> < html> &l ...

  7. JAVA生成PDF文件

    生成PDF文件是主要应用的是ITEXT插件 import java.awt.Color; import java.io.File; import java.io.FileOutputStream; i ...

  8. fastjson使用示例

    一.fastjson 一款Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser.包括 ...

  9. Java连接MYSQL【转载】

    这篇文章主要以MySQL为例讲下Java如何连接到数据库的. 当然,首先要安装有JDK(一般是JDK1.5.X).然后安装MySQL,这些都比较简单,具体过程就不说了.配置好这两个环境后,下载JDBC ...

  10. C#-获取datatable指定列的数据

    DataTable dt = new DataTable();            da.Fill(dt);                                    this.text ...