Android学习笔记—第二章Android四大组件

第二章 Android四大组件

从策划到设计制作,每一步都追求做到细腻,制作可持续发展的企业网站。为客户提供成都网站制作、成都网站设计、外贸星空体育app最新版本(2024已更新)建设、网站策划、网页设计、国际域名空间、网页空间、网络营销、VI设计、 网站改版、漏洞修补等服务。为客户提供更好的一站式互联网解决方案,以客户的口碑塑造优易品牌,携手广大客户,共同发展进步。

  1. Activity(活动窗口):

    Android程序中最基本的模块,为用户操作而展示的可视化用户界面。一个Android应用程序可以只有一个Activity,也可以包含多个Activity,数量及每个Activity的作用取决于应用程序及其设计。

    (1)Activity的生命周期

    创建→运行   onCreate   onStart   onResume

    运行→销毁   onPause    onStop    onDestory

    运行→停止(不可见  不可操作)  onPause   onStop

    停止→恢复   onRestart  onStart  onResume

    运行→暂停(可见  不可操作) onPause

    暂停→恢复 onResume

    备注:当Activity处于暂停或停止状态的时候,如果有更高优先级的应用需要内存时,该Activity所在应用可能被销毁。

    (2)应用举例:数据持久化

    存:onPause  onStop  onDestory

    取:onCreate  onStart  onResume

    (3)创建一个Activity

    在eclipse项目中,“新建”→“other”→“Android”→“Android Activity”

    (4)启动Activity

    Intent intent = new Intent(Activity1.this,Activity2.class);

    startActivity(intent);

    (5)关闭Activity

    finish();

  2. Service(服务):没有界面,运行在后台

    (1)Service的创建:

    a. 创建一个类继承Service

    b. 重写onbind()方法

    c. 清单文件中注册  android:name="包名.类名"

    (2)启动服务

    Intent serviceIntent = new Intent(this,MyService.class);

    startService(serviceIntent);

    备注:第一次启动,会触发Service的onCreate和onStartCommand方法;如果服务已经存在,则多次点击启动服务,只会调用onStartCommand方法。

    (3)停止服务

    stopService(serviceIntent);

    (4)绑定服务

    bindService(serviceIntent,xxx,xxx);

    a. serviceIntent:表示一个Intent对象;

    b. 第二个参数:表示一个ServiceConnection对象,例如:

    ServiceConnection conn =new ServiceConnection;

    c. 第三个参数:Context.BIND_AUTO_CREATE 表示如果服务不存在,会自动创建一个服务。

     (5)解绑服务

    unbindService(conn);

    (5)通过绑定调用Service中的方法

    a. 创建一个类MyBinder继承Binder

    b. 在该类中添加所需要调用的Service中的方法

    c. 在onBinder()方法中,返回一个MyBinder类型的对象

    d. 在Activity的onServiceConnected()方法中,得到IBinder类型对象

    e. 将IBinder类型对象强转为MyBinder类型

  3. BroadcastReceiver(广播接收器)

    (1)广播:单项、群发,作为Android内部信息传输的机制。

    (2)广播接收器的创建:

    a. 创建一个类MyReceiver继承BroadcastReceiver;

    b. 重写onReceive()方法;

    c. 清单文件中注册

    android:name="包名.类名"

    (3)应用自己发送广播

    //创建Intent对象

    Intent intent = new Intent();

    //设置过滤条件

    intent.setAction("xxx");

    //发送广播

    sendBroadcast(intent);

    (4)接收广播

    a. 在清单文件中注册广播

    <intent-filter>

        <action android:name="xxx"/>

    </intent-filter>

    只要条件匹配,就能接收广播

    b. 在代码中注册广播

    //创建IntentFilter对象

    IntentFilter filter = new IntentFilter();

    //添加过滤条件

    filter.addAction("xxx");

    //创建MyReceiver对象

    MyReceiver receiver = new MyReceiver();

    //注册广播

    registerReceiver(filter,receiver);

    //注销广播

    unregisterReceiver(receiver);

  4. ContentProvider(数据共享)

    一个用来提供数据共享的组件,主要将一些特定的应用程序数据提供给其他应用程序使用,这些应用程序数据可以存储于文件系统或者SQLite数据库中。在Android程序中,共享数据的实现需要继承自ContentProvider基类,该基类为其他应用程序使用和存储数据实现了一套标准方法。然而,应用程序并不直接调用这些方法,而是使用一个ContentResolver对象,并通过调用它的方法作为替代。ContentResolver对象提供了query、insert及update等方法,可以对共享数据执行各种操作。

    (1)ContentResolver(内容解析者)示例:读取系统联系人

    //创建ContentResolver对象

    ContentResolver resolver = getContentResolver();

    //使用query方法获取联系人信息

    Cusor cusor = resolver.query(Phones.CONTENT_URI, null, null, null, null);

    //遍历联系人信息

    while(cursor.moveToNext()){

    //根据字段名获取该字段的索引位置

    int nameIndex = cursor.getColumnIndex(Phones.NAME);

    int numberIndex = cursor.getColumnIndex(Phones.NUMBER);

    //根据索引获取联系人信息

    String name = cursor.getString(nameIndex);

    String number = cursor.getString(numberIndex);

    }

    //关闭cursor对象

    cursor.close();

标题名称:Android学习笔记—第二章Android四大组件
标题来源:/article8/jcepop.html

成都网站建设公司_创新互联,为您提供小程序开发网页设计公司响应式网站网站改版品牌网站设计网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设