技术

来源:互联网 发布:淘宝双11如何抢购 编辑:程序博客网 时间:2024/05/16 18:19

activity是Android组件中最基本也是最为常见用的四大组件之一。Android四大组件有Activity,Service服务,Content Provider内容提供,BroadcastReceiver广播接收器。

Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。
Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件
在一个android应用中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。
简单理解,Activity代表一个用户所能看到的屏幕,主要用于处理应用程序的整体性工作,例如,监听系统事件(按键事件,触摸屏事件等),为用户显示指定的View,启动其他Activity等。Activity是最基本的模块,我们称知为活动,在应用程序中,一个Activity通常就是一个单独的屏幕。每一个活动都被实现为一个独立的类,并且从活动基类中继承而来,活动的类将会显示有视图控件组成的用户接口,并对事件作出相应。大多数应用都是从Activity显示组成,例如,对一个文本信息应用而言,第一个屏幕用来显示发送消息的联系人列表,第二个屏幕用来写文本消息和选择收件人,第三个屏幕查看消息历史或者消息设置操作等。这里的每一个屏幕就是一个活动,很容易实现从一个屏幕到一个新的屏幕,并且完成新的活动。当一个新的屏幕打开后,前一个屏幕将会暂停,并保存在历史栈中。用户可以返回到历史栈中的前一个屏幕,当屏幕不再使用时,还可以从历史栈中删除。简单理解,Activity代表一个用户所能看到的屏幕,主要用于处理应用程序的整体性工作,例如,监听系统事件(按键事件,触摸屏事件等),为用户显示指定的View,启动其他Activity等。所有应用的Activity都继承于android.app.Activity类,该类是Android提供的基层类,其他的Activity继承该父类后,通过父类的方法来实现各种功能,这种设计在其它领域也较为常见。
1.Activity的主要作用

Activity是Android一个非常重要的用户接口,是可见的,用户和应用程序之间进行交互的接口。在每个Activity中都可以放很多控件,所以也可以把Activity看作控件的容器。

2.创建Activity的要点

1)一个Activity就是一个类,并且这个类要继承Activity,而这个被继承的Activity来源于android.jar包
2)需要复写onCreate方法,当一个Activity第一次运行时Android操作系统就会调用onCreate方法
3)因为Activity是应用程序的组件,所以每一个Activity都必须在AndroidManifest.xml里面注册,manifest相当于应用程序清单。
4) 为Activity添加必要的控件

3.在AndroidManifest.xml文件中注册应用Activity的方法

1) 注册Activity的时候name的时候前面加点,因为和包名合起来就刚好是这个类(或者说Activity)的路径。
2) label,就是在页面上方白色的部分显示的文字
3)intent-filter,暂时不用管,意思就是你在哪个activity配置这个东西,哪个activity就在应用打开的时候第一个运行

4.在Activity中添加控件,就是在layout文件夹中创建布局文件(严格意义上来说并不是每一个Activity都要创建一个相应的xml布局文件,比如:TextView textview = new TextView(this);

//以前我一直以为每创建一个Activity必须相应地也要创建一个layout文件,现在发现不是这样,也可以按照这个方法,创建一个简单的TextView,把Context设置为this,设置一个文本值,然后再将这个TextView设置为ContentView.这种个人觉得更加方便测试吧。

        textview.setText("This is the Artists tab");

        setContentView(textview);

    }

}

这样的方法同样工作,但是总的来说还是建议为每一个Activity定义一个布局文件。

1) 程序中的setContentView就是设置这个Activity所使用的布局文件。
比如:setContentView(R.layout.my_text);  //说到这里,注意一个问题,布局文件的名称不允许有大写
2) 在xml文件中设置的控件id会在R.java中生成id
3)在应用程序中使用findViewById来取得布局文件中的控件(前提是布局文件中的控件必须设置相应的id),因为它的返回类型为View,所以要强制类型转换为控件类型
举个例子就是 Button button =(Button)findViewById(R.id.button);

原创粉丝点击