一、创建一个新的Activity

1.android的四大组件都要在清单文件里面配置

2.如果想让你的应用有多个启动图标,你的activity需要这样配置

    <intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

3.Activity下的lable和icon属性可以和Application节点的属性不一样,默认用Application节点下的属性

二、意图(intent)

隐式意图:通过指定一组动作或数据

        Intent intent = new Intent();
//设置跳转的动作
intent.setAction("com.cn.testActivity");
intent.addCategory("android.intent.category.DEFAULT");
//开启activity
startActivity(intent);

显示意图:通过指定具体的包名和类名 。Intent intent = new Intent(this,TestActivity.class);

总结:1.开启自己应用的界面用显示意图。

2.开启其他应用(系统应用)用隐式意图。(电话拨号器)

3.显示意图更安全一些。

三、短信大全案例

public class MainActivity extends Activity {

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView lv = (ListView) findViewById(R.id.lv);
//设置数据
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.item, R.id.tv_content, objects);
//设置数据适配
lv.setAdapter(adapter); //给ListView设置点击事件
lv.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
//把点击条目的数据取出来
String content = objects[position]; Intent intent = new Intent();
//设置action
intent.setAction("android.intent.action.SEND");
intent.addCategory("android.intent.category.DEFAULT");
intent.setType("text/plain");
//传递数据
intent.putExtra("sms_body", content);
//跳转到发送短信的页面
startActivity(intent);
}
});
}
}

四、Activity的生命周期

1.onCreate():当activity启动的时候调用           onDestroy():当activity销毁的时候调用

2.onRestart()

3.onStart():当activity界面变成可见的时候调用         onStop():当activity界面变成不可见的时候调用

4.onResume()  当界面有按钮被点击,获取焦点的时候调用     onPause() 当界面按钮不可被点击,失去焦点的时候调用

横竖屏切换activity生命周期

android:screenOrientation="landscape" 横屏

android:screenOrientation="portrait"   竖屏

四、任务栈的概念(与activity有关)

1.进栈:打开一个activity,出栈:关闭一个activity

2.我们操作的activity永远是栈顶的activity。

3.activity的任务栈是用来维护用户操作体验。

4.应用程序退出时任务栈清空了。

5.一般情况下一个应用程序对应一个任务栈。

五、Activity的四种启动模式(理解中,后续补充)

1.standard

应用场景:浏览器的书签

2.singleTop:会检查任务栈栈顶的activity,如果存在则不会创建,直接复用。

3.singleTask:检查当前任务栈,

4.singleInstance:自己创建一个任务栈。

应用场景:来电页面

android四大组件(一)Activity的更多相关文章

  1. Android四大组件之Activity(活动)及其布局的创建与加载布局

    Android四大组件之Activity(活动)及其布局的创建与加载布局 什么是Activity ? 活动(Activity)是包含用户界面的组件,主要用于和用户进行交互的,一个应用程序中可以包含零个 ...

  2. Android四大组件之——Activity的生命周期(图文详解)

        转载请在文章开头处注明本博客网址:http://www.cnblogs.com/JohnTsai       联系方式:JohnTsai.Work@gmail.com       [Andro ...

  3. Android四大组件之——Activity的开启:StartActivity()和StartActivityForResult()(图文详解)

                如需转载请在文章开头处注明本博客网址:http://www.cnblogs.com/JohnTsai       联系方式:JohnTsai.Work@gmail.com   ...

  4. 【Android开发日记】之入门篇(四)——Android四大组件之Activity

    在Android中,无论是开发者还是用户,接触最多的就算是Activity.它是Android中最复杂.最核心的组件.Activity组件是负责与用户进行交互的组件,它的设计理念在很多方面都和Web页 ...

  5. Android四大组件及activity的四大启动模式

    Android四大组件 1. 广播接收者的两种类型: (1)系统广播接收者,就是继承BroadcastReceiver这个类,然后还要在清单文件中注册,注册之后给他一个action.当系统发生了这个a ...

  6. Android四大组件之——Activity(一)定义、状态和后退栈(图文详解)

    什么是Activity 关键字:应用组件.四大组件.用户界面,交互. An Activity is an application component that provides a screen wi ...

  7. Android 四大组件之 Activity(二)

    1.综述 Activity是Android四大组件(Application Components)之一,简单来说Activity就是平常所见到的用户界面,一般情况下,一个Activity所占的窗口是满 ...

  8. Android 四大组件之 Activity

    1 简介 Activity (活动) 即应用程序 显示的 界面.可以通过两种方式 设置显示的内容 1:纯代码方式 2:xml 布局方式 无论哪一种方式,都是通过 setContentView 来设置显 ...

  9. Android 四大组件之 Activity(一)

    1.Activity的定义及作用: Android系统中的四大组件之一,可以用于显示View.Activity是一个与用户交互的系统模块,几乎所有的Activity都是和用户进行交互的一个应用程序的组 ...

  10. [Android基础]Android四大组件之Activity总结

    1.Activity简介 Activity是Android一个非常重要的用户接口(四大组件之一),是可见的,主要是用户和应用程序之间进行交互的接口.在每个Activity中都可以放很多控件,所以也可以 ...

随机推荐

  1. 成都Uber优步司机奖励政策(3月14日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  2. PHP数组中插入元素

    1. array_unshift()数组头插入新元素 $fruits = array('apple','pear','banana','orange'); array_unshift($fruits, ...

  3. BBU+RRU基本介绍

    现代移动通信网络中的数模转化架构:RRU+BBU: 因为学习需要了解RRU+BBU.特此网上查找了一番,找到了一些还不错的解释,分享给大家! BBU与RRU的区别: 通常大型建筑物内部的层间有楼板,房 ...

  4. Qt-第一个QML程序-4-自定义按钮类,动画,状态

    上篇中,我们写到了自己定义了一个按钮,但是呢,按照这样的写法,要写一个程序出来,那要累死了,所以,qml给我的感觉就是各种随便调用,所以了,可以自己写一个自己Button的qml,这样在以后用到了,就 ...

  5. 搭建redis集群的过程中遇到的问题

    1.GCC没有安装或版本不对 报错信息如下 CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] Error 127 m ...

  6. leetcode-位1的个数(位与运算)

    位1的个数 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量). 示例 : 输入: 11 输出: 3 解释: 整数 11 的二进制表示为 00000 ...

  7. 如何处理 jQuery $(window).resize() 中的方法被多次执行的小问题

    引言: 估计很多同志们在编写浏览器resize()的方法时,都会遇到这样的情况: 当拖动浏览器的边角时,页面中的一些效果随浏览器大小的改变而触发,这一过程开始到结束,resize() 中的方法被执行了 ...

  8. 【Coursera-ML-Notes】线性回归(下)

    模型表示 多变量的线性回归也叫做"多元线性回归".首先还是先明确几个符号的含义. \(x{^{(i)}_j}\):第i个训练样本的第j个特征,比如面积,楼层,客厅数 \(x^{(i ...

  9. Turtlebot

    Turtlebot2 数据分析: imu信息:只有z轴的旋转yaw,没有xy的角速度. odom:利用轮速计,提供平移变换,没有z方向的平移. 好的网站,详细介绍了turtlebot的使用:https ...

  10. 5.hadoop常用命令

    1. 单独启动和关闭hadoop服务 启动名称节点 #hadoop-daemon.sh start namenode 启动数据节点 #hadoop-daemons.sh start datanode ...