- 博客(16)
- 收藏
- 关注
原创 ItemView设置了listener对ListView使用OnItemLongClickListener的影响
其实我对android源码基本不懂,也很少会写,偶尔会写布局的一些代码,昨天组里的一个小姑娘问了我一个关于ListVIew的OnItemLongClickListener的问题,有的ItemView会调用,有的不会调用,她感到很奇怪,我其实也不太懂,于是就翻翻源码看了看,然后给她写了篇邮件,以下就是邮件内容了,首先通过ListView.setOnItemLongClickLis
2016-08-11 18:09:09 1721
原创 Chromium wtf ptr简介
今天本来是想封装一个MutationObsever的类,发现好多关于指针的使用,每次看过之后都会忘,记忆力差,决定今天就边看边记录一下 吧。1. nullptr就是封装了一个空指针,这个没什么可说的,哎,语言表达能力弱.......2. RawPtrRawPtr, 封装了一个指针,T* m_ptr; 以及一些列的接口比如get, clear, release 等,
2014-12-23 16:42:37 627
原创 MutationObserver Webkit
最近做了一些和MutationObserver相关的东西,然后今天把这些相关的东西分享一下。MutationObserver是一个突变观察者,可以监控目标节点的改变(增加删除节点,改变属性, 改变文本等),一般都是通过JS来使用。但使用js,显然不如直接在webkit中进行观测效率高。通过在webkit中添加观察者以来可以提高效率,二来可以熟悉下相关的代码。Mu
2014-06-09 19:55:38 1194
转载 WebKit网页布局实现之主要数据结构篇
在有了对CSS网页布局标准及相关概念的认识之后,我们可以更加深入的理解WebKit究竟是如何实现其网页布局,同时实现对CSS布局标准的支持。毕竟标准归标准,要高效的实现这些标准,不同的实现肯定有其不同的实现方式,就像不同的Web服务器对HTTP协议标准的实现有所不同一样,当然不同的实现也会增加一些自身特有的属性。下面我们从数据结构的角度来了解WebKit中为实现网页布局所设计的主要类结构及
2014-02-13 13:57:29 683
转载 CSS:替换元素(Replaced)、不可替换元素(Nonreplaced)、块元素(Block-level)和行内/内联元素(Inline)
元素是文档结构的基础,在CSS中,每个元素生成了一个包含了元素内容的框(box,也译为“盒子”)。但是不同的元素显示的方式会有所不同,例如和就不同,而和也不一样。在文档类型定义(DTD)中对不同的元素规定了不同的类型,这也是DTD对文档之所以重要的原因之一。1. 替换和不可替换元素从元素本身的特点来讲,可以分为替换和不可替换元素。a) 替换元素替换元素就是浏览器根据元素的标签和属性
2014-02-13 12:30:02 1495
转载 css添加一条属性
添加一条属性添加一条属性,它能够绘制一个矩形框。它可以指定矩形边的颜色,边的宽度,边的样式,以及矩形区域。如:picl:blue solid 2px rect(100px 300px 300px 100px);picl为属性名称,blue为边的颜色,solid为边 的样式,2px为边的宽度,rect(100px 300px 200px 50px)为矩形区域。步骤:(1).通
2014-02-09 22:20:02 890
原创 webkit 扩展JS(添加新类)
webkit 扩展JS(添加新类)实现本文的方法后,可以在js脚本里用新的类 比如想新加一个类miuiAgent,其中的方法为descript,当调用alert(miuiAgent.descript)时即可弹出包含descript内容的窗口。具体描述如下(可以依葫芦画瓢) (本文是在android 4.1上实现的)1. WebCore/page目录下在添加MIuiAgent.
2014-02-09 22:18:27 751
原创 WebView Touch事件总结
WebView Touch事件总结通过VIew的dispatchTouchEvent(MotionEvent event)函数调用子类WebView::OnTouchEvent(MotionEvent); 调用WebViewClassic::onTouchEvent(MotionEvent ev) (在这里你可以做些自己想做的事情,比如if (ev.getAction() ==
2014-02-09 22:17:27 894
转载 内存池(2)
内存池(2)/** The young Library* Copyright (c) 2005 by Yang Huan(杨桓)* Permission to use, copy, modify, distribute and sell this software for any* purpose is hereby granted without fee, provide
2014-02-09 22:13:53 494
转载 内存池
内存池 本篇介绍程序库中的内存池算法。内存池函数的声明文件为: young/youngc/yc_memory.h内存池函数的实现文件为: young/youngc/yc_memory.c**3.1**首先来看一下内存池算法用到的一些类型和常量。下面的类型和常量定义在头文件 yc_definition.h 内;硬件字节类型 :ylib_byte_t;
2014-02-09 22:11:54 596
转载 va_list继续详解
va_list继续详解概述由于在C语言中没有函数重载,解决不定数目函数参数问题变得比较麻烦;即使采用C++,如果参数个数不能确定,也很难采用函数重载.对这种情况,有些人采用指针参数来解决问题.下面就c语言中处理不定参数数目的问题进行讨论.定义大家先看几宏.在VC++6.0的include有一个stdarg.h头文件,有如下几个宏定义:#define _INTSIZE
2014-02-09 22:10:33 607
转载 va_list、va_start、va_arg、va_end的原理与使用
va_list、va_start、va_arg、va_end的原理与使用 . 概述由于在C语言中没有函数重载,解决不定数目函数参数问题变得比较麻烦;即使采用C++,如果参数个数不能确定,也很难采用函数重载.对这种情况,有些人采用指针参数来解决问题.下面就c语言中处理不定参数数目的问题进行讨论.2. 定义 大家先看几宏. 在VC++6.0的include有一个stdar
2014-02-09 22:09:05 428
转载 vc自定义消息的发送与接收的方法实现
vc自定义消息的发送与接收的方法实现以下用一个自创的对话框类(MyMessageDlg)向视图类(MessageTestView)发送自定义消息为例,说明这两种不同方法的自定义消息的消息传递的方法一:使用ON_MESSAGE使用ON_MESSAGE响应消息,必须配合定义消息#define WM_MY_MESSAGE (WM_USER+100)对于发送消息者-MyMessageD
2014-02-09 22:05:48 519
转载 虚函数
虚函数一:虚函数的注意:1. virtual只能声明类的成员函数, 不能在类外声明。2. 一个成员函数在被声明为虚函数后,就不能再定义一个virtual得但是与该虚函数具有相同的参数(包括类型与个数)和函数返回值类型的同名函数。 二:什么情况下使用虚函数呢?1.看成员函数的类是否会作为基类,然后看成员函数再类的继承后有误可能被修改功能,若希望修改功能的,应把他声明为虚函
2014-02-09 22:04:16 483
原创 C++ const用法小结
1.const 修饰指针 const int *A //A可变,但是A指向的对象不可变 int const *A //同上,因为const 都是在*的左边 int * const A //A不可变,但是A指向的对象可变 const int *const A //指针A和A指向的对象都不可变所以关于const修饰指针这块,只需要记住这点就好了,
2014-02-09 21:59:32 460
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人