zoukankan      html  css  js  c++  java
  • 编辑联系人

    相关类
    packages/apps/Contacts/src/com/android/contacts/activities/ContactEditorActivity.java
    packages/apps/Contacts/src/com/android/contacts/editor/ContactEditorFragment.java
    packages/apps/Contacts/src/com/android/contacts/ContactSaveService.java
    packages/apps/Contacts/src/com/android/contacts/editor/RawContactEditorView.java
    packages/apps/Contacts/src/com/android/contacts/model/RawContactDeltaList.java

    编辑联系人界面从8.0开始修改为ContactEditorActivity,但同时兼容旧的联系人编辑界面CompactContactEditorActivity

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <!-- Edit or create a contact with only the most important fields displayed initially. -->
    <activity
    android:name=".activities.ContactEditorActivity"
    android:theme="@style/EditorActivityTheme">
    <intent-filter>
    <action android:name="android.intent.action.INSERT"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="vnd.android.cursor.dir/person"/>
    <data android:mimeType="vnd.android.cursor.dir/contact"/>
    <data android:mimeType="vnd.android.cursor.dir/raw_contact"/>
    </intent-filter>
    </activity>
    <!-- Keep support for apps that expect the Compact editor -->
    <activity-alias
    android:name="com.android.contacts.activities.CompactContactEditorActivity"
    android:exported="true"
    android:targetActivity=".activities.ContactEditorActivity">
    <intent-filter android:priority="-1">
    <action android:name="android.intent.action.INSERT"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="vnd.android.cursor.dir/person"/>
    <data android:mimeType="vnd.android.cursor.dir/contact"/>
    <data android:mimeType="vnd.android.cursor.dir/raw_contact"/>
    </intent-filter>
    </activity-alias>
    一般情况下编辑联系人界面的启动分两种情况,existing_contact 和 new_contact

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    @Override
    public void onCreate(Bundle savedState) {
    super.onCreate(savedState);
    ......
    if (Intent.ACTION_EDIT.equals(action)) {
    mActionBarTitleResId = R.string.contact_editor_title_existing_contact;
    } else {
    mActionBarTitleResId = R.string.contact_editor_title_new_contact;
    }
    ......
    }
    ContactEditorActivity的onCreate方法中创建并调用了ContactEditorFragment,由该Fragment负责整个编辑界面的操作和维护,ContactEditorFragment中主要是用自定义ViewRawContactEditorView来展示和编辑联系人数据,从而形成了完整的用户交互

    联系人数据编辑完成后的后续保存工作由ContactSaveService类来负责完成,需要注意的是ContactSaveService是一个IntentServer,用在此处恰到好处,当快速处理完Intent任务就会立马释放资源
    ————————————————

  • 相关阅读:
    JavaWeb网上图书商城完整项目--day02-18.修改密码页面处理
    JavaWeb网上图书商城完整项目--day02-17.登录功能页面实现
    JavaWeb网上图书商城完整项目--day02-16.登录功能各层实现
    JavaWeb网上图书商城完整项目--day02-15.登录功能流程分析
    JavaWeb网上图书商城完整项目--day02-14.登录功能的login页面处理
    JavaWeb网上图书商城完整项目--day02-12.激活功能各层实现
    JavaWeb网上图书商城完整项目--day02-11.激活功能流程分析
    JavaWeb网上图书商城完整项目--day02-10.提交注册表单功能之页面实现
    javascript数组与字符串之间转换
    Bootstrap
  • 原文地址:https://www.cnblogs.com/ly570/p/11414323.html
Copyright © 2011-2022 走看看