buder

201709028工作日记--今天的搜索问题

1.项目中的listview是自己定制的,从下往上显示item条目。重写了onLayout()方法。

  可以参考从源码角度理解listview相关细节:http://blog.csdn.net/guolin_blog/article/details/44996879

 

View的执行流程无非就分为三步,onMeasure()用于测量View的大小,onLayout()用于确定View的布局,onDraw()用于将View绘制到界面上。而在ListView当中,onMeasure()并没有什么特殊的地方,因为它终归是一个View,占用的空间最多并且通常也就是整个屏幕。onDraw()在ListView当中也没有什么意义,因为ListView本身并不负责绘制,而是由ListView当中的子元素来进行绘制的。那么ListView大部分的神奇功能其实都是在onLayout()方法中进行的了,因此我们本篇文章也是主要分析的这个方法里的内容。

 

如果你到ListView源码中去找一找,你会发现ListView中是没有onLayout()这个方法的,这是因为这个方法是在ListView的父类AbsListView中实现的,代码如下所示:

 

因此我们重写了onLayout()方法,将布局从底向上进行显示。

2.从下往上显示list条目:

博客:http://bbs.csdn.net/topics/390744358?page=1

方法:mListView.setSelection(mListView.getCount() - 1);

3.syncManager();

4.ActionBar;

5.searchView(); searchView.setQueryHint(); setInQueryTextListener(){}

http://www.jianshu.com/p/b13926773467

6.开启的新线程可以访问到开启它的进程所在的私有数据。

 

 

下面的字段仍然在searchNote()这个方法中:

 

 7,

SpannableStringBuilder

 8.ContentObserver

 9.registerContentObserver()  unregisterContentObserver()

 

 

 

 

posted on 2017-09-28 10:21  buder  阅读(120)  评论(0编辑  收藏  举报

导航