1、activity是什么
activity:翻译为“活动”,是Android程序的四大组件(广播、服务、内容提供者)之一,提供了与用户交互的可视化界面(用户能够看到的界面都是在activity中),包含了一些供用户观看和操作的控件,通常一个activity代表手机屏幕的一屏。
2、activity的简单实用
要想使用一个事物,必须要先有这个事物;如果此事物都不存在,何谈使用呢?因此要使用activity就必须先创建一个activity! 2.1、创建Activity
activity是基本组件之一,要创建activity就必须继承Activity或者Activity的子类。
方式一 、在包名文件夹右键--》New-->Java Class,如图:
在弹出框中编辑Activity信息,如图:
在包名文件夹右键--》New-->Activity,如图:
选择Gallery浏览,如图:
此时选择空样式即可,填写activity信息,如图:
两种方式创建结果一样,如图:
2.2注册Activity并启动程序
android程序的四大组件都必须在清单文件AndroidManifest.xml中配置注册。
<activity></activity>标签必须放在<application></application>里面。
如果程序中没有声明任何一个Activity作为主Activity启动,程序仍然可以正常安装,只是无法在启动器中看到或者打开这个程序,这种程序一般都作为第三方服务供其他的应用在内部进行调用。
此时即可编译代码,启动程序:
2.3启动另一个Activity
如果一个程序中只有一个活动界面就太简单了,那么如果有多个Activity,该怎样从一个启动的activity中进入另一个activity中呢?现在按照上面的步骤再创建一个SecondActivity,如图:
此时你会发现类中没有任何方法和属性,这是默认创建的Activity。如果要给此activity填充内容界面,需要为该activity创建布局文件,并加载进该activity。
创建布局文件:
在res文件夹中选中layout文件夹右键--》New--》Layout resource file,如图:
如上填写布局信息,完成后,会自动在R文件中生成对应资源的ID。
加载进activity:
通常集成activity或其子类后,需要重写onCreate()方法,
并在方法中加载该活动页面的界面。如图:
常用方法1 setContentView(int layoutResID) 加载布局资源,参数:资源在R文件中生成的id。
既然第二个Activity已经有了那么怎样从MainActivity中进入该Activity中呢?
操作控件:
首先,在创建MainActivity布局中,没有加入任何的自定义元素,此时添加一个按钮Button,当用户点击按钮时,进入SecondActivity。
在activity_main.xml中添加按钮Button,如图:
其次,要点击按钮,就必须在MainActivity中查找到按钮控件,如图:
常用方法2 findViewByID(int id) 查找布局资源中的控件,参数:控件在R文件中生成的id。
然后,点击按钮,如何知道按钮被用户点击了呢?那就需要监听此按钮被点击的事件,给按钮设置点击事件,如图:
常用方法3 setOnClickListener(OnClickListener listener) 给控件设置点击监听事件,参数:点击监听接口实例对象。
最后,既然知道了用户点击了按钮,接下来就是进行跳转到SecondActivity。Activity进行跳转提供了一个方法:
常用方法4 startActivity(Intent intent)启动新的Activity,参数:意图Intent 对象
Intent是Android程序中各组件之间进行通信交互的主要方式,可以指定活动意图而且还可以传递数据。
重新编译代码启动程序,点击按钮进行跳转,却发现如下错误:SecondActivity没有找到,问是否在清单文件中注册。刚刚在创建SecondActivity时,并没有在ActivityManifest.xml 中注册,四大组件必须在清单文件中进行注册。
再重新编译运行即可!
2.4关闭Activity
在上一步进行了跳转新的Activity,那么怎么关闭新的Activity呢?接下来在activity_second.xml布局文件中添加一个按钮,当点击按钮的时候,关闭当前的Activity。
步骤不再赘述,如图:
常用方法5 finish()关闭当前Activity。