Android编程-Activity

 

重要的回调函数:

    onCreate():初始化activity要用的其他的组件(可以是其他的activity和contentprovider之类)。调用setContentView(),设定本Activity用户界面的布局。

    onPause():用户离开activity。确认哪些用户更改需要保存。

 

用户界面:

    用户界面由View的子类实现,每个view控制Activity中的一块矩形空间(例如按钮)。

    线程的View:

        小部件:按钮、文本框、复选框、图像。

        布局:ViewGroup的子类,线性布局、网格布局、相对布局。

    借助Android程序的资源内的xml布局文件来定义布局。这样Activity代码负责行为,而布局定义在xml中。

 

在清单文件中定义Activity,这样Activity才能被执行。

    Android SDK创建Android程序时,自动创建intent-filter:

<activity android:name=".ExampleActivity" android:icon="@drawable/app_icon">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" /> ------- 指定该Activity是Android程序的主入口
        <category android:name="android.intent.category.LAUNCHER" /> ------- Activity有系统的Launcher来启动
    </intent-filter>
</activity>

 

    开发者可以创建更多的<intent-filter>,与其他组件的隐式Intent想匹配,从而可以让其他组件激活此Activity。

    https://developer.android.com/guide/components/intents-filters.html

        Intent是一个消息对象。其使用方式如下:

        1) 启动Activity。

            将Intent传给startActivity(),可以启动一个Activity实例。Intent描述了要启动的Activity,并携带了必要的数据。

            将Intent传给startActivityForResult(),启动的Activity结束后会调用回调函数onActivityResult(),将结果返回。

        2) 启动Service。

            Intent指定具体哪个服务,并携带必要的数据。

            将Intent传递给startService(),启动一个服务,进行一次性操作(例如,下载文件)。

            将Intent传递给bindService(),绑定一个服务。

        3) 传递广播。

            广播是所有Android程序都可以接收的消息。Android OS将各种系统事件(例如充电)广播出去。

            将Intent传递给sendBroadcast()、sendOrderedBroadcast()、sendStickyBroadcast(),进行广播。

        Intent有如下类型:

        1) 显式Intent:通过类名来指定要启动的组件(反射机制)。

        2) 隐式Intent:声明要执行的动作(例如,在地图上显式位置),让其他Android程序完成此动作。

                                查找清单文件,如果隐式Intent与文件中的<intent-filter>匹配,则启动该Android程序。

                                如果有多个Android程序的<intent-filter>匹配,则显示一个列表,供用户选择。

        <略>

 

    保存Activity的状态:

        在Activity进入pause和stop状态之后,可能会被Android OS杀掉。

        在回调函数onSaveInstanceState()中保存状态,这样用户再次回到Android程序时,一切如初,好像什么也发生一样。

        在Android OS销毁Activity时,传递一个Bundle给onSaveInstanceState(),将名值对放入Bundle。

        当Android OS重新创建Activity时,Bundle被传递给onCreate()和onRestoreInstanceState(),于是Activity的状态可以恢复出来。

 

转载于:https://www.cnblogs.com/leoict2017/p/8243679.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值