摘要: private void addContactToGroup(int contactId,int groupId) { //judge whether the contact has been in the group boolean b1 = ifExistContactInGroup(contactId, groupId); if (b1) { //the contact has been in the group ... 阅读全文
posted @ 2012-11-19 14:18 那些人追过的年 阅读(1729) 评论(0) 推荐(0) 编辑
摘要: final ArrayList<ContentProviderOperation> operationList = new ArrayList<ContentProviderOperation>(); ContentProviderOperation.Builder builder = ContentProviderOperation.newInsert(RawContacts.CONTENT_URI); builder = ContentProviderOperation.newInsert(Data.CONTENT_URI)... 阅读全文
posted @ 2012-11-19 14:16 那些人追过的年 阅读(2183) 评论(0) 推荐(0) 编辑
摘要: 这篇文章只是总结下getView里面优化视图的几种写法,就像孔乙己写茴香豆的茴字的几种写法一样,高手勿喷,勿笑,只是拿出来分享,有错误的地方欢迎大家指正,谢谢。listview A view that shows items in a vertically scrolling list 。一个显示一个垂直的滚动子项的列表视图 在android开发中,使用listview的地方很多,用它来展现数据,成一个垂直的视图。使用listview是一个标准的适配器模式,用数据--,界面--xml以及适配器--adapter,数据被适配器按照需要的方式展现出来,xml描写了数据如何展现,activity中控 阅读全文
posted @ 2012-11-08 13:32 那些人追过的年 阅读(6337) 评论(4) 推荐(1) 编辑
摘要: 写这边文章之前,犹豫再三,不知道会不会冒犯一位朋友,他给我之前的一篇文章提出的意见。但我声明真心无意,只是想把问题拿出来分析一下,希望获得理解。 listview在android开发中很地方都用到了,通常我们需要定制item里面的视图,就要重写adapter。而item中的控件根据需要来添加。但是如果出现了某些特定的item控件,就可能导致listview 的onItemClickListener不起作用。 下面是一个范例,说明这种情况。 首先还是先看代码: 布局xml文件如下:View Code item布局xml如下:View Code <LinearLayout ... 阅读全文
posted @ 2012-11-07 17:58 那些人追过的年 阅读(16832) 评论(5) 推荐(2) 编辑
摘要: 最近写了一个项目,界面使用的是帧布局,里面放置了listview显示联系人,以及右侧有对联系人的字母索引定位。结果在对联系人listview设置onItemClickListener时,发现竟然不起作用。 下面的是布局文件以及设置代码<FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/contact_fl" > <ListView android:id=" 阅读全文
posted @ 2012-11-06 10:43 那些人追过的年 阅读(26236) 评论(2) 推荐(0) 编辑
摘要: 写好Notification , 按Home回到主界面,再按通知栏的消息(Notification), 回到退出之前正在运行的Acticity . 在代码中加入两行代码作为声名即可。 : Intent notificationIntent = new Intent(this,this.getClass()); /* */ notificationIntent.setAction(Intent.ACTION_MAIN); notificationIntent.addCategory(Intent.CATEGORY_LAUNCHER); Pendi... 阅读全文
posted @ 2012-11-01 14:11 那些人追过的年 阅读(905) 评论(0) 推荐(0) 编辑
摘要: 相比较onMeasure ,layout过程要简单多了,正如layout的中文意思“布局”中表达的一样,layout的过程就是确定View在屏幕上显示的具体位置,在代码中就是设置其成员变量mLeft,mTop,mRight,mBottom的值,这几个值构成的矩形区域就是该View显示的位置,不过这里的具体位置都是相对与父视图的位置。 与onMeasure过程类似,ViewGroup在onLayout函数中通过调用其children的layout函数来设置子视图相对与父视图中的位置,具体位置由函数layout的参数决定,当我们继承ViewGroup时必须重载onLayout函数(ViewGro. 阅读全文
posted @ 2012-10-24 15:31 那些人追过的年 阅读(24082) 评论(0) 推荐(3) 编辑
摘要: invalidate()最后会发起一个View树遍历的请求,并通过执行performTraersal()来响应该请求,performTraersal()正是对View树进行遍历和绘制的核心函数,内部的主体逻辑是判断是否需要重新测量视图大小(measure),是否需要重新布局(layout),是否重新需要绘制(draw)。measure过程是遍历的前提,只有measure后才能进行布局(layout)和绘制(draw),因为在layout的过程中需要用到measure过程中计算得到的每个View的测量大小,而draw过程需要layout确定每个view的位置才能进行绘制。下面我们主要来探讨一下m 阅读全文
posted @ 2012-10-24 14:56 那些人追过的年 阅读(15098) 评论(3) 推荐(3) 编辑
摘要: Dialog类中找到了dismiss和cancel方法的实现。 看dismiss的源码: public void cancel() { if (mCancelMessage != null) { // Obtain a new message so this dialog can be re-used Message.obtain(mCancelMessage).sendToTarget(); } dismiss(); }在cancel方法中调用了dismiss方法。 那么:mC... 阅读全文
posted @ 2012-10-24 11:58 那些人追过的年 阅读(5905) 评论(0) 推荐(0) 编辑
摘要: onMeasure()和onLayout() 1. onMeasure a. 属于View的方法,用来测量自己和内容的来确定宽度和高度 b. view的measure方法体中会调用onMeasure 2. onLayout a. 属于ViewGroup的方法,用来为当前ViewGroup的子元素的位置和大小 b. View的layout方法体中会调用onLayout 3.onMeasure在onLayout之前调用 4. 设置background后,会重新调用onMeasure和onLayout Intent中的addflags()和setflags()的区别 addflags():Add a 阅读全文
posted @ 2012-10-24 11:55 那些人追过的年 阅读(1428) 评论(0) 推荐(0) 编辑