`
huangqinqin
  • 浏览: 365814 次
  • 性别: Icon_minigender_2
  • 来自: 福州
社区版块
存档分类
最新评论

Contacts知识要点

 
阅读更多
1:将ListView上的每条Item转换成Cursor,以便从数据库中查询数据(一般用于数据绑定的情况下,即ListView与Adapter的结合使用)

Cursor getItemForView(View view){
ListView listView = getListView();
int index = listView.getPositionForView(view);
if (index < 0){
return null;
}
return (Cursor)listView.getAdapter( ).getItem( index);
}

2:全选,反选的处理
private OnClickListener selectAllListener = new OnClickListener(){
public void onClick(View v){
if (!selectAll){
selectAll = true;
}else{
selectAll = false;
}
mAdapter.notifyDataSetChanged( );
}
};

private OnClickListener selectAllOkListener = new OnClickListener(){
public vlid onClick(View v){
if (selectAll){
mNewDialog = new NewDialog(mContext,
getString(R.string.menu_deleteContact),
deleteContactsListener, deleteContactsCancelListener);
}else{
boolean findleatOneContact = false;
for (int i = 0; i < selectPeopleId.length; i++){
if (selectPeopleId[i] != null){
findleatOneContact = true;
break;
}
}

if (!findleatOneContact){
mNewDialog = new NewDialog(mContext,
getString(R.string.atleastonecontact),
sureListener, null);
}else{
mNewDialog = new NewDialog(mContext,
getString(R.string.menu_deleteContact),
deleteContactsListener, deleteContactsCancelListener);
}
}
mNewDialog.setCancelable(false);
mNewDialog.show();
}
};

3:删除多个联系人处理
private View.OnClickListener deleteContactsListener = new View.OnClickListener(){
public void onClick(View v){
if (selectAll){
getContentResolver().delete(People.CONTENT_URI, null, null);
}else{
ContentResolver resolver = getContentResolver();
for (int i = 0; i < selectPeopleId.length; i++){
if (selectPeopleId[i] != null){
Uri uri = Uri.parse(People.CONTENT_URI + "/" + selectPeopleId[i]);
resolver.delete(uri, null, null);
}
}
}
mNewDialog.cancel();
}
}

四:编辑联系人时号码类型选择与切换
private OnClickListener numberTypeListener = new OnClickListener(){
public void onClick(View v){
if (currentType == PHONETYPE){
mNumberType.setText(type[1]);
currentType = FAMILYTYPE;
}else if (currentTyep == FAMILYTYPE){
mNumberType.setText(type[2]);
currentType = COMPANYTYPE;
}else{
mNumberType.setText(type[0]);
currentType = PHONETYPE;
}
}
};
五:拨号键盘旋转动画
public boolean onTouchEvent(MotionEvent event){
int action = event.getAction();
int x = (int)event.getX();
int y = (int)event.getY();
switch(action){
case MotionEvent.ACTION_UP:
if ((x >= 321 && x <= 321 + 61)
&& (y >= 250 && y <= 250 + 61)){
startRotateAnimation(1);
}else if (){
}else if (){
}

case MotionEvent.ACTION_CANCEL:
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
return true;
}
return false;
}

private Animation rotateAnimation;
private ImageView mDialpanel;
mDialpanel = (ImageView)findViewById(R.id.dialpanel);
private void startRotateAnimation(int index){
switch(index){
case 1:
rotateAnimation = AnimationUtils.loadAnimation(
TwelveKeyDialerAnimation.this, R.anim.rotate_1);
break;
case 2:

}
mDialpanel.startAnimation(rotateAnimation);
}

rotate_1.xml
<?xml version="1.0" encoding="utf-8" ?>
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:repeatcount="1"
android:repeatMode="reverse"
android:fromDegress="0"
android:toDegress="38"
android:pivotX="48.2%"
android:pivotY="48.2%"
android:duration="500" />
分享到:
评论

相关推荐

    Guide to Managing Media and Public Relations in the Linux Community

    ### 知识点一:公共关系与媒体关系在Linux...- **结尾**:总结要点,并提供联系方式以便媒体进一步了解。 通过遵循上述指南,Linux社区可以有效地管理和提升其在媒体和公众中的形象,从而推动社区的发展和技术的进步。

    IOS通讯录时时读取并按照首字母排序

    在iOS开发中,实现“通讯录时时读取并按照首字母排序”的功能涉及到多个关键知识点。首先,我们需要理解和使用苹果的Contacts框架,这是iOS系统提供用于访问和管理用户联系人数据的核心API。接下来,让我们深入探讨...

    android通讯录源码

    本篇文章将深入探讨这些技术要点。 首先,我们关注的是Android数据存储。在通讯录应用中,数据通常以联系人信息的形式存在,包括姓名、电话号码、电子邮件地址等。Android提供了多种数据存储方式,如SQLite数据库、...

    android 调用系统界面

    在Android开发中,调用系统界面...总之,通过上述知识点的介绍,可以了解到在Android开发中调用系统界面的常用方法和注意要点,这对于开发应用程序,特别是涉及电话、短信、联系人等系统功能的应用时是必不可少的知识。

    android手机通讯录的设计与实现本科论文.doc

    【标题】:“Android手机通讯录的设计与实现本科论文” 【描述】:“该文档是一篇...通过以上知识点的学习,学生将能全面了解Android平台上通讯录应用的开发流程和技术要点,为未来从事Android应用开发打下坚实基础。

    Android 获取手机联系人并按字母排序,且可根据字母右侧A~Z检索-IT计算机-毕业设计.zip

    这个"Android 获取手机联系人并按字母排序,且可根据字母右侧A~Z检索"的项目,是一个适用于毕业设计学习的源码示例,它覆盖了Android开发中的多个关键知识点。以下将详细介绍这些技术要点: 1. **Android权限管理**...

    基于安卓Android通讯录的开发源码.zip

    由于访问通讯录涉及用户的隐私数据,所以在AndroidManifest.xml文件中,我们需要声明READ_CONTACTS和WRITE_CONTACTS权限,以允许应用读取和修改用户联系人信息。 接下来,是数据库操作。Android使用SQLite作为内置...

    Android 6.0 运行时权限处理

    在Android 6.0(API级别23)及更高版本中,系统引入了一项重要的安全增强功能——运行时...以上就是关于Android 6.0运行时权限处理的基本知识和实践要点。理解并正确实施这些内容对于开发兼容新系统的应用至关重要。

    android通讯录简单项目源码

    本文将深入探讨这些技术要点,以便你更好地理解这个"android通讯录简单项目源码"。 首先,我们要了解Android应用的基本结构。一个标准的Android应用由多个组件构成,包括Activity(活动)、Service(服务)、...

    数据库联系人增改查app

    在Android平台上,开发...以上就是开发“数据库联系人增改查app”的主要技术要点,涵盖Android应用开发的基本流程和关键知识点。通过这个项目,开发者可以深入理解Android应用的架构设计、数据库操作以及用户交互设计。

    安卓电话簿

    综上所述,"安卓电话簿"涵盖了SQLite数据库操作、联系人管理、Intent通信、SMSManager使用、权限管理和UI设计等多个Android开发的核心知识点。学习和实践这个项目可以帮助开发者深入理解Android应用开发的基本流程和...

    Android 简易通讯录小程序.rar

    【Android 简易通讯录小程序】是一款专为学习Android编程设计的小项目,它涵盖了Android应用开发中的基础概念和技术要点。这个项目可以帮助开发者,特别是初学者理解如何在Android平台上构建一个实用的应用。通过...

    手机wap源码模板 (271).zip

    【标题】"手机wap源码模板 (271).zip" 涉及的主要知识点是移动Web开发,尤其是关于手机WAP(无线应用协议)网站的构建。WAP是一种允许移动设备通过无线网络访问互联网的技术,它使得在手机上浏览网页、下载数据等...

    快速上手Android数据库操作

    本文详细介绍了Android SQLite数据库操作的核心概念和技术要点,通过具体的示例代码展示了如何利用SQLiteOpenHelper、SQLiteDatabase、Cursor和SimpleCursorAdapter进行数据库的管理和数据的增删查改操作。...

    电子功用-带平面安装式触点的电气接插件

    平面安装式触点(Surface Mount Contacts)是电子设备中的一种常见接合技术,它允许电子组件直接焊接到电路板的表面,而非传统的穿过孔焊接。这种技术大大提高了生产效率,减少了组装成本,同时增强了电路板的空间...

    简易版 android QQ通讯录 源码

    8. **权限申请**:访问联系人数据需要在AndroidManifest.xml文件中声明`READ_CONTACTS`权限,并在运行时检查并请求用户授权。 9. **性能优化**:对于大量的联系人数据,可以使用异步加载和分页加载技术,避免一次性...

    课程设计-基于Java swing带GUI界面的通讯录管理系统设计与实现

    下面将详细介绍这个系统的实现过程以及涉及到的技术要点。 首先,Java Swing是Java提供的用于构建桌面应用程序的GUI工具包,它是Java Foundation Classes (JFC)的一部分。Swing提供了丰富的组件,如按钮、文本框、...

    android 仿微信、米聊通讯录

    在Android平台上,开发一款类似微信或米聊的通讯录功能是一项技术挑战,涉及到多个关键知识点。首先,我们要理解微信和米聊这样的应用是如何处理和显示通讯录的。这些应用程序不仅需要整合系统的联系人数据,还可能...

    Android本地通讯录A-Z排序、侧边栏、字母/文字搜索

    以下将详细介绍这些功能的实现原理和技术要点。 首先,**A-Z排序**是通讯录应用的基础功能,它使得用户能快速找到联系人。在Android中,我们可以使用`ContentResolver`来查询系统中的联系人数据。通过`...

Global site tag (gtag.js) - Google Analytics