手势识别=读取手机联系人=ContentResolverDay32

mobile3.0

  1. 手机设置向导页面完成
  2. 选择器没有做完成
  3. 样式提取完成
  4. 自定义控件的优化继续
  5. 抽取父类Activity 完成
  6. 手机读取联系人。

问题堆栈

  1. 自定义控件深入理解自定义ListView
  2. 是时候研究框架和设计XUtils4个模块
  3. 明天仔细研究窗口过度动画。

4. 手势控制GestureDetector

手势在Activity里面有一个onTouchEvent(MotionEvent event)方法,参数就是用户在屏幕上面的作用的是贱,MOtionEvent封装了许多手势定义的方法,我们通过定义GenntureDetector,监听SimpleOnGestureListener监听器中的onFing(....)滑动方法,具体实现如下

// 创建该Activity的时候
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
context = this;
requestWindowFeature(Window.FEATURE_NO_TITLE);
// 创建一个手势识别器
mGestureDetector = new GestureDetector(this, new SimpleOnGestureListener()
{
/*
* e1 表示第一次触摸事件, e2表示手纸离开时的事件 x 水平方向的速度 y,表示束值方向的速度
*/
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
{
// 如果监听成功返回true,监听失败返回false;
if (Math.abs(velocityX) < 100)
{
// pis/s 表示单位时间内划过的速度太慢
ToastUtil.show(context, "下一页请滑动快一点");
return true;
}
if (e1.getRawX() - e2.getRawX() > 200)
{
showNext();
overridePendingTransition(R.anim.tran_in, R.anim.tran_out);
return true;
}
if (e2.getRawX() - e1.getRawX() > 200)
{
showPre();
overridePendingTransition(R.anim.tran_in_pre, R.anim.tran_out_pre);
return true;
}

return super.onFling(e1, e2, velocityX, velocityY);
}

// 长按的监听
@Override
public void onLongPress(MotionEvent e)
{
new AlertDialog.Builder(context).setIcon(R.drawable.btn_check_off)
.setTitle("你长按了我的屏幕").setMessage("我很想知道你是想干嘛!").create().show();
}
});
}

@Override
public boolean onTouchEvent(MotionEvent event)
{
mGestureDetector.onTouchEvent(event);
// TODO Auto-generated method stub
return super.onTouchEvent(event);
}
  1. 动画设计

  2. 广播接收器复习
  3. ViewPage,Pargment优化完成一半。晚上继续资料

    ViewPage是V4包里面的一个控件,如何更好的和Pargment使用需要一段时间的研究当中,我们会在晚上加油更努力的去学习。

  4. 晚上录传智视频

自定义控件深入理解自定义ListView

ContentResolver

这个类主要是Android用来实现数据共享的,一个应用程序可以将自己的数据完全暴露出去,靠的就是这个类,里面提供了。delete()insert(),upDate,query()的方法。原理是什么?现在还不是太理解

心得

  1. 深一定要深入一点。

  2. 那一天花一早上的时间来研究界面设计
  3. 俩人1.0
  4. 看博客的时候一定要自己做总结笔记。效率才会高

准备设计一个发祝福短信的应用。Phone1.0

1.读取到你要发的人的名字。在短信前面会家乡个你存的电话的名字。这样可以假装你不是群发的。

手势识别=读取手机联系人=ContentResolver-Day3的更多相关文章

  1. Android 读取手机联系人、拨号、发送短信及长按菜单的操作

    本示例实现了读取手机联系人,拨号.发送短信及长按出现菜单选项的操作↓ 1.Andrid项目结构图↓主要操作图中红色方框内的文件. 2.首先布局代码如下↓ a, main.xml 程序运行的主界面,主要 ...

  2. 读取手机联系人,并用listview显示

    读取手机联系人,用到的就是一个contentprovider. 数据库里面有三张重要的表 raw_contact 里面有所有联系人的数据 data 每个联系人的所有数据 mime-type 每条数据的 ...

  3. Android使用READ_CONTACTS读取手机联系人

    实例代码: package com.example.readcontacts; import java.io.InputStream; import java.util.ArrayList; impo ...

  4. Android项目——读取手机联系人信息

    加入读取联系人信息的权限 <uses-permission android:name="android.permission.READ_CONTACTS"/> cont ...

  5. android131 360 05 手势触摸滑动,sim卡,开机启动的广播,手机联系人,SharedPreferences,拦截短信

    安卓手势触摸滑动: package com.itheima52.mobilesafe.activity; import android.app.Activity; import android.con ...

  6. android利用ContentResolver访问者获取手机联系人信息

    转载自:http://www.jb51.net/article/106379.htm 首先需要在AndroidManifest.xml文件中添加权限: <uses-permission andr ...

  7. Android-AsyncTask异步任务(获取手机联系人)

    本篇随笔将讲解一下Android的多线程的知识,以及如何通过AsyncTask机制来实现线程之间的通信. 一.Android当中的多线程 在Android当中,当一个应用程序的组件启动的时候,并且没有 ...

  8. android: 通过内容提供器读取系统联系人

    读取系统联系人 由于我们之前一直使用的都是模拟器,电话簿里面并没有联系人存在,所以现在需要自 己手动添加几个,以便稍后进行读取.打开电话簿程序,界面如图 7.1 所示. 图   7.1 可以看到,目前 ...

  9. 玩爆你的手机联系人--T9搜索(一)

         自己研究了好几天联系人的T9搜索算法, 先分享出来给大家看看. 欢迎不吝赐教.假设有大神有更好的T9搜索算法, 那更好啊,大家一起研究研究,谢谢. 第一部分是比較简单的获取手机联系人. 获取 ...

随机推荐

  1. word在线编辑\生成图片(包含截图与合并)

    1.业务原因 word编辑后的文章复制到html编辑器(fck等)会发生排版错乱的情况,于是混沌了.需要有一个新的方法来终结,于是产生了word能不能在线编辑,后台保存,前台显示灯一系列问题. 2.首 ...

  2. zabbix监控zookeeper

    在github找到一个不错的模板,直接导入使用.下载地址: https://github.com/zhujinhe/zookeeper-zabbix-template 监控项监控类型为外部检查 zab ...

  3. Ignatius and the Princess III

    Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ...

  4. OracleHelper[.Net 连接Oracle数据库的封装类]

    using System; using System.Configuration; using System.Data; using System.Data.OracleClient; using S ...

  5. [原]RobotFrameWork(四)变量运算与Evaluate

    一.特殊变量运算: 执行结果: 二.Evaluate使用 函数释义:Evaluate是执行python表达式,并返回执行结果 示例1: 执行结果: 示例2: 执行结果: 作者:liuheng12345 ...

  6. 如何避免jQuery库和其他库的冲突

    默认情形:jQuery用$作为自身的快捷方式 1. jQuery库在其他库之后导入 (1)方法:使用jQuery.noConflict()函数将变量$的控制权转移给其他库 (2)操作: (a)在js代 ...

  7. 1002: Prime Path

    题目链接:http://172.16.200.33/JudgeOnline/problem.php?id=1002 题意:给你两个四位数的素数,求最少经过多少步的变化能够从一个素数变到另一个素数.在变 ...

  8. 1003: A Bug

    题目链接:http://172.16.200.33/JudgeOnline/problem.php?id=1003 分析: (1)题意很简单,就是检查一堆数据中是否有同性恋,找出主要矛盾是如果1喜欢2 ...

  9. 关于ArrayList线程安全解决方案

    一:使用synchronized关键字 二:使用Collections.synchronizedList();使用方法如下: 假如你创建的代码如下:List<Map<String,Obje ...

  10. MVC视图中ViewStart/RenderSection/Layout/Partial

    1.母板页_Layout.cshtml 2.部分视图 3.默认Layout引用的使用(_ViewStart.cshtml) Layout = "~/Views/Shared/_Layout. ...