- 浏览: 365814 次
- 性别:
- 来自: 福州
文章分类
最新评论
-
loveskey:
找了好久,可算是找到了。感谢
dx.jar dx.bat -
zhaoyi168:
可以把工程的代码发给我吗?
ZJLN1982@yahoo.co ...
Athrun Demo -
ergodic09:
請問樓主 我目前在porting AR6003但是無法自己產生 ...
009-Android平台开发-WIFI function porting-WIFI功能移植 -
iedj99fei:
...
androi中xliff:g
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" />
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" />
发表评论
-
eclipse中安装插件地址
2014-03-07 15:08 755http://subclipse.tigris.org/up ... -
ubuntu13下载android源码
2014-02-27 18:23 634一、注意repo的正确地址 repo:curl " ... -
用例无法运行,报如下错:Exception during suite construction
2014-02-26 15:47 1264一 前提 1、 测试工程中的所有参数已配置好,如ins ... -
dx.jar dx.bat
2013-06-17 19:33 2255Android SDK中dx.jar, dx.bat文件的备份 ... -
Please ensure that adb is correctly located..... 问题
2013-04-16 09:44 964解决方法: 方法一、查毒杀毒,也许了病毒占用了adb ... -
PC端通过adb与设备端通信
2013-03-28 09:36 1510adb 全称Android Debug Bri ... -
Unable to execute dex: Multiple dex files define Lorg/taptwo/android/widget/Circ
2013-02-21 15:07 2575问题:[2013-02-21 15:01:02 - Dex ... -
android viewTree and decorView
2013-01-30 13:55 1694Android ViewTree and DecorView ... -
No active compatible AVD's or devices found. Relaunch this configuration after c
2013-01-29 10:56 8759问题:No active compatible AVD's ... -
代码对比工具
2013-01-24 15:33 646windows: http://www.scooterso ... -
android最新源码下载
2013-01-23 09:57 1048源码下载:https://source.android.co ... -
Run MonkeyTalk Scripts via Ant in Windows
2012-12-18 20:24 1277Run MonkeyTalk Scripts via ... -
Android中cpu,memory,Battery的计算
2012-11-20 19:59 66101 Memory的分配(RAM而非ROM) 网址: •ht ... -
http://code.taobao.org/p/TMTS/src/
2012-10-12 17:38 1029http://code.taobao.org/p/TMTS/s ... -
string.xml文件中的特殊符号转换符
2012-09-24 09:09 777strings.xml文件中需要对特殊符号(如%,'等)进行转 ... -
web server 中设置wifi代理
2012-09-24 09:07 893DefaultHttpClient httpClient = ... -
Android开发一些常见问题
2012-09-24 09:06 7411:当追踪问题时,代码中实在找不出问题所以,代码的逻辑完全正确 ... -
将log信息写入sdcard
2012-07-05 17:14 869File mFile; private void write ... -
string.xml文件中的特殊符号转换符
2012-06-19 19:39 1050strings.xml文件中需要对特殊符号(如%,'等)进行转 ... -
关于popupWindow的dismiss
2012-06-17 16:13 8586View contentView = LayoutInflat ...
相关推荐
### 知识点一:公共关系与媒体关系在Linux...- **结尾**:总结要点,并提供联系方式以便媒体进一步了解。 通过遵循上述指南,Linux社区可以有效地管理和提升其在媒体和公众中的形象,从而推动社区的发展和技术的进步。
在iOS开发中,实现“通讯录时时读取并按照首字母排序”的功能涉及到多个关键知识点。首先,我们需要理解和使用苹果的Contacts框架,这是iOS系统提供用于访问和管理用户联系人数据的核心API。接下来,让我们深入探讨...
本篇文章将深入探讨这些技术要点。 首先,我们关注的是Android数据存储。在通讯录应用中,数据通常以联系人信息的形式存在,包括姓名、电话号码、电子邮件地址等。Android提供了多种数据存储方式,如SQLite数据库、...
在Android开发中,调用系统界面...总之,通过上述知识点的介绍,可以了解到在Android开发中调用系统界面的常用方法和注意要点,这对于开发应用程序,特别是涉及电话、短信、联系人等系统功能的应用时是必不可少的知识。
【标题】:“Android手机通讯录的设计与实现本科论文” 【描述】:“该文档是一篇...通过以上知识点的学习,学生将能全面了解Android平台上通讯录应用的开发流程和技术要点,为未来从事Android应用开发打下坚实基础。
这个"Android 获取手机联系人并按字母排序,且可根据字母右侧A~Z检索"的项目,是一个适用于毕业设计学习的源码示例,它覆盖了Android开发中的多个关键知识点。以下将详细介绍这些技术要点: 1. **Android权限管理**...
由于访问通讯录涉及用户的隐私数据,所以在AndroidManifest.xml文件中,我们需要声明READ_CONTACTS和WRITE_CONTACTS权限,以允许应用读取和修改用户联系人信息。 接下来,是数据库操作。Android使用SQLite作为内置...
在Android 6.0(API级别23)及更高版本中,系统引入了一项重要的安全增强功能——运行时...以上就是关于Android 6.0运行时权限处理的基本知识和实践要点。理解并正确实施这些内容对于开发兼容新系统的应用至关重要。
本文将深入探讨这些技术要点,以便你更好地理解这个"android通讯录简单项目源码"。 首先,我们要了解Android应用的基本结构。一个标准的Android应用由多个组件构成,包括Activity(活动)、Service(服务)、...
在Android平台上,开发...以上就是开发“数据库联系人增改查app”的主要技术要点,涵盖Android应用开发的基本流程和关键知识点。通过这个项目,开发者可以深入理解Android应用的架构设计、数据库操作以及用户交互设计。
综上所述,"安卓电话簿"涵盖了SQLite数据库操作、联系人管理、Intent通信、SMSManager使用、权限管理和UI设计等多个Android开发的核心知识点。学习和实践这个项目可以帮助开发者深入理解Android应用开发的基本流程和...
【Android 简易通讯录小程序】是一款专为学习Android编程设计的小项目,它涵盖了Android应用开发中的基础概念和技术要点。这个项目可以帮助开发者,特别是初学者理解如何在Android平台上构建一个实用的应用。通过...
【标题】"手机wap源码模板 (271).zip" 涉及的主要知识点是移动Web开发,尤其是关于手机WAP(无线应用协议)网站的构建。WAP是一种允许移动设备通过无线网络访问互联网的技术,它使得在手机上浏览网页、下载数据等...
本文详细介绍了Android SQLite数据库操作的核心概念和技术要点,通过具体的示例代码展示了如何利用SQLiteOpenHelper、SQLiteDatabase、Cursor和SimpleCursorAdapter进行数据库的管理和数据的增删查改操作。...
平面安装式触点(Surface Mount Contacts)是电子设备中的一种常见接合技术,它允许电子组件直接焊接到电路板的表面,而非传统的穿过孔焊接。这种技术大大提高了生产效率,减少了组装成本,同时增强了电路板的空间...
8. **权限申请**:访问联系人数据需要在AndroidManifest.xml文件中声明`READ_CONTACTS`权限,并在运行时检查并请求用户授权。 9. **性能优化**:对于大量的联系人数据,可以使用异步加载和分页加载技术,避免一次性...
下面将详细介绍这个系统的实现过程以及涉及到的技术要点。 首先,Java Swing是Java提供的用于构建桌面应用程序的GUI工具包,它是Java Foundation Classes (JFC)的一部分。Swing提供了丰富的组件,如按钮、文本框、...
在Android平台上,开发一款类似微信或米聊的通讯录功能是一项技术挑战,涉及到多个关键知识点。首先,我们要理解微信和米聊这样的应用是如何处理和显示通讯录的。这些应用程序不仅需要整合系统的联系人数据,还可能...
以下将详细介绍这些功能的实现原理和技术要点。 首先,**A-Z排序**是通讯录应用的基础功能,它使得用户能快速找到联系人。在Android中,我们可以使用`ContentResolver`来查询系统中的联系人数据。通过`...