Android中四大组件之Activity(一)

来源:互联网 发布:ftp的默认端口 编辑:程序博客网 时间:2024/06/06 20:39

1 如何创建一个新的Activity?

补充:Activity用来多页面的开发(一个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下的label属性和icon属性可以和application节点的属性不一样,默认用application节点下的属性

【4】一个Android应用,我们一般就配置一个启动图标就可以,看见的其他界面都是从第一个界面跳转过去的

在介绍创建新的Activity之前,首先介绍一下隐式意图和显示意图!!!

2  隐式意图

定义:通过指定一组动作或者数据开启Activity

通常指的是开启系统自带的一些界面,比如拨打电话界面等等。

3 显示意图

定义:通过指定具体的包名和类名

通常指的是开启我们自己定义的一些Activity(界面)。

总结2和3:(1)开启自己应用的界面用显示意图。(2)开启其他应用(系统应用)的时候用隐式意图,比如电话拨号器。(3)显示意图安全一些

下面这个案例就是对创建Activity、隐式意图以及显示意图进行一个演示(在主界面中添加三个按钮,第一个按钮是实现跳转到拨打电话的页面,第二个按钮跳转到自己定义的一个界面,第三个按钮是用简单的方式跳转到自己定义的一个界面,下面是三个按钮的具体实现):

public void click1(View v){

          //[1]定义一个意图对象

          Intent intent = new Intent();

         //[2]设置拨打动作

         intent.setAction(Intent.ACTION_CALL);

        //[3]设置拨打数据

        intent.setData(Uri.parse("tel:"+119));

        //[4]开启意图

        startActivity(intent);

}


//点击按钮 跳转到TestActivity
    public void click2(View v){
        //[1]创建意图对象  意图就是我要完成一件事
        Intent intent = new Intent();
        //[2]设置跳转动作
        intent.setAction("com.itheima.testactivity");//与清单文件里的配置要一致
        //[3]设置category
        intent.addCategory("android.intent.category.DEFAULT");//与清单文件里的配置要一致
//        //[4]设置拨打数据
//        intent.setData(Uri.parse("itheima:"+110));
//        //[5]设置数据类型
//        intent.setType("aa/bb");
        //[6]注意小细节  如果setdata方法和settype方法一起使用的时候 应该使用下面这个方法
        intent.setDataAndType(Uri.parse("itheima:"+110), "aa/bb");//与清单文件里的配置要一致
        //[4]开启意图
        startActivity(intent);

    }


//点击按钮  简单方式 跳转到Test3Activity
    public void click3(View v){
        //[1]创建意图对象  意图就是我要完成一件事
        Intent intent = new Intent(this,Test3Activity.class);
        //[2]设置包名和类名  packageName(当前应用的包名)
        //intent.setClassName("com.itheima.newactivity", "com.itheima.newactivity.Test3Activity");
        //[3]开启意图
        startActivity(intent);
    }

原创粉丝点击