- Android-View的事件分发及拦截-父控件和子控件都处理触摸事件的方式
MonkeyLei
比如接着上篇Android-View的事件分发及拦截机制简单流程先体验再研究(场景?疑问?具体?待续...),小白现在要实现就是子View和父ViewGroup都响应点击事件。1.单纯的都只是响应down事件这个就很简单了-直接子View的**publicboolean**onTouchEvent(MotionEventevent)里面直接返回false就行了。也就是子控件响应了一次down后,接
- Android-View绘制原理(02)-VSync原理之SurfaceFlinger篇
代码多哥
一路向下-aosp源码分析android
前面一篇文章从整体介绍View绘制的流程,其中一点就是绘制的起始点就是界面收到了Vsync之后,开始新一帧的绘制,所以可以说,是vsync触发了绘制。收到vsync信号后的处理我们已经清楚了,现在我们分析以下sync是怎么产生的,以及怎么消费的。1.从16ms说起我们16ms这个时间应该是印象深刻了,我们经常听到在大部分屏幕的刷新频率是60Hz的情况下,那每一帧的时间就约16ms,如果应用程序在收
- Android-View进阶-事件分发机制原理
上课小蜗牛
Android移动端Android事件分发Android进阶
简简单单讲清楚android事件分发。原文链接什么叫事件分发机制?事件分发是:当发生了一个事件时,在屏幕上找到一个合适的控件来处理这个事件的过程。因为一个界面上控件如此之多,发生一个事件后总要寻找一个合适来处理事件吧。这个过程就叫做事件分发的机制。常见事件原文链接那么屏幕上都会发生什么事件呢?来看下经常要处理的4种事件(这些事件在android中会被封装成MotionEvent对象):事件简介AC
- 2021我对Android-view的3条认识,全网疯传
web大美女
程序员android移动开发面试
开头让我们一起来看看,字节跳动的第三面,面试官都问了什么?(第一二面的题目及答案已整理,需要的可以在文末领取)从七月中旬开始,我前前后后差不多一共投递了八十份简历,到目前为止,我参加面试的面试有十二家(收到的面试通知)字节跳动的面试我准备了一个多星期吧,因为比较重视。从字节跳动面试官这些问题,可以看出,第三面他们考察的一个很重要的方向就是项目架构和性能优化。“懒洋洋”甚至跟我吐槽:“我靠,现在大厂
- Android-View 绘制流程
zskingking
前言距离上次发文大约已经过了十个月左右,期间换了份工作,有着不错的领导跟同事,还多了一位可爱至极的赵老师陪着我。最近在不断的有人给我的文章点赞评论,看到后甚是欣慰,但同时也陷入了深深的沉思,找到新工作后,业余时间竟在吃喝玩乐想法设法消磨时间,碌碌无为的过了大半年,这种生活状态经常让我产生不安,甚至焦虑,所以一咬牙一跺脚我又回来了~~~闲话不多扯切入正题,作为一名Android开发者肯定明白View
- Android-View点击事件短时间重复点击的过滤
xiedroid
一、实现方式1、Rxjava2、自定义类继承OnClickListener接口二、实现过程1、Rxjava这种方式需要项目以来rxjava库,推荐在项目中存在该库时使用**如果不想依赖,可以参考第二种方式。用到的方法:Observable的throttleFirst方法实现短时间内的事件过滤。importandroid.view.Viewimportio.reactivex.Observablei
- Android-View的绘制
爱吃香蕉的猴子0000
anroid-杂乱android
View的绘制hi,大家好,我是爱吃香蕉的猴子,今天写写,绘制view;先绘制一个画笔效果:代码:publicclassDrawLextendsView{privateintmov_x;//声明起点坐标privateintmov_y;privatePaintpaint;//声明画笔privateCanvascanvas;//画布privateBitmapbitmap;//位图privateintb
- Android-View进阶-事件分发机制原理
weixin_34029949
简简单单讲清楚android事件分发。原文链接什么叫事件分发机制?事件分发是:当发生了一个事件时,在屏幕上找到一个合适的控件来处理这个事件的过程。因为一个界面上控件如此之多,发生一个事件后总要寻找一个合适来处理事件吧。这个过程就叫做事件分发的机制。常见事件原文链接那么屏幕上都会发生什么事件呢?来看下经常要处理的4种事件(这些事件在android中会被封装成MotionEvent对象):事件简介AC
- Android-View学习(二)
本然233
Android
系列学习:https://www.gcssloop.com/customview/CustomViewIndex/一、View的生命周期https://www.jianshu.com/p/08e6dab7886e构造View()-->onFinishInflate()-->onAttachedToWindow()-->onMeasure()-->onSizeChanged()-->onLayout
- Android-View绘制流程浅析
learnNG
android
引这段时间学习了下View的绘制流程,本着好记性不如烂笔头的原则,尝试将这些内容记录下来,用于巩固和总结。这次学习的源码是基于AndroidSDK25来学习的,相比于之前版本的源码有了些许改变。对于部分代码的功能和作用没有专门在正文中写出,而是以注释的形式写在了代码中。基本流程流程可大致分为两个部分,首先是在Activity的onCreate阶段设置contentView,另一个阶段则是在Acti
- 【Android-View】Android View控相关低频属性
dandelionela
AndroidView
目录1.TextView2.EditText3.ImageView4.Button4.1去掉Button默认的点击阴影5.CheckBox5.1调整原生样式CheckBox的大小5.2调整原生样式CheckBox的颜色6.RecyclerView7.Toolbar8.CardView8.1CardView去除阴影1.TextView2.EditText3.ImageView4.Button4.1去
- 【Android-View】基于原生View的简单功能定制
dandelionela
ViewAndroid
1.TextView1.1设置TextView可滚动且更新文字后自动滚动至最后一行【方案】如下步骤①在TextView布局文件中给TextView加入如下属性android:scrollbars="vertical"android:fadeScrollbars="false"②在Activity中的onCreate()方法中,使用setMovementMethod(MovementMethodmo
- Android高可拓展框架Conductor源码解析(1)
豆沙包lo
Android
先上源码地址,点我!介绍Conductor是一个基于视图的“麻雀虽小,五脏俱全”的Android框架,它给标准Android-View进行简单的封装,去掉不必要的特性。简单聚合不使用Fragment简单强力的生命周期导航与回退的处理优雅的视图跳转状态持久化onActivityResult,onRequestPermissionsResult等方法回调MVP/MVVM/VIPER/MVC拓展Cond
- android-view篇-ConstraintLayout 约束布局
Liu Weidong
android
文章目录概述相对定位边距居中和偏移Circularpositioning尺寸约束链GroupGuideline参考概述ConstraintLayout主要是为了解决布局嵌套过多的问题,以灵活的方式定位和调整小部件。AndroidStudio2.3开始,官方模板默认使用ConstraintLayout。添加依赖,如下:implementation'com.android.support.constr
- android-view button 防止短时间内重复点击
梦与千寻
UI动态加载反射重构动态技术
短时间用户多次发出某个点击事件1,比如点击某个按钮跳转(详情页面)activity,手机性能不加。在未跳转之前用户多次触发了点击事件就会产生两个activity。可能对于四大组件的activity,会有人说。使用activity的启动模式在manifest中配置activitylaunchMode标签(singleTask,singleTop,singleInstance)然并不卵用。2,点击某个
- Android-View事件体系之View的基础知识
欧阳帆54
Android-View事件体系之View的基础知识View虽然不是四大组建,但是其作用却不属于四大组建,甚至凌驾于ContentProvider和BroadcastReceiver之上。所以从这节开始讲解一下View的相关知识。View的基础知识什么是ViewView是Android中所有控件的基类,所以View是一种界面层的控件的一种抽象,它代表了一个控件。除了View,还有一个ViewGro
- Android-View的测量
Flutter笔记
AndroidView的测量在绘制View之前,要对整个View进行测量,这个过程就在onMeasure()方法中进行的。测量的模式EXACTLY精确值模式,当控件的width和height设置为具体值或者match_parent时就是这个模式UNSPECIFIED这个属性不指定测量的模式,View想多大就多大AT_MOST最大值模式,当控件的width和height设置为wrap_context
- Android-View进阶-事件分发机制原理
TryEnough
简简单单讲清楚android事件分发。什么叫事件分发机制?事件分发是:当发生了一个事件时,在屏幕上找到一个合适的控件来处理这个事件的过程。因为一个界面上控件如此之多,发生一个事件后总要寻找一个合适来处理事件吧。这个过程就叫做事件分发的机制。常见事件那么屏幕上都会发生什么事件呢?来看下经常要处理的4种事件(这些事件在android中会被封装成MotionEvent对象):事件简介ACTION_DOW
- Android-View自定义属性-简化写法
lioilwin
一.声明属性类型(res/values/attrs.xml)1.自定义属性正式写法,必须有此步骤,属性类型多样(int,float,boolean,enum....)2.自定义属性简化写法,可忽略此步骤,但属性类型只有字符串二.使用属性(res/layout/layoutxxx.xml)三.在java中获取xml属性publicclassMyViewextendsView{publicMyView
- Android-View绘制流程浅析
叮咚象JC
引这段时间学习了下View的绘制流程,本着好记性不如烂笔头的原则,尝试将这些内容记录下来,用于巩固和总结。这次学习的源码是基于AndroidSDK25来学习的,相比于之前版本的源码有了些许改变。对于部分代码的功能和作用没有专门在正文中写出,而是以注释的形式写在了代码中。基本流程流程可大致分为两个部分,首先是在Activity的onCreate阶段设置contentView,另一个阶段则是在Acti
- Android - View 的工作原理
_CAFE_BABE_
Android-View的工作原理View的工作流程主要指的是measure、layout、draw这三大流程,即测量、布局和绘制,其中measure确定View的测量宽/高,layout确定View的最终宽/高和四个顶点的位置,而draw则将View绘制到屏幕。在介绍View的三大流程之前,需要先了解ViewRoot、DecorView和MeasureSpec的基本概念,才能更好的理解View的
- Android - View 的事件分发机制
_CAFE_BABE_
Android-View的事件分发机制View的事件由MotionEvent类表示,MotionEvent定义了大量的常量来表示用户的手指(鼠标、手写笔、轨迹球)在屏幕上的各种状态。View的事件分发机制指的就是View(ViewGroup、Button等)在复杂的层级关系里对MotionEvent事件的分配和处理规则。事件序列:当一次手指触摸屏幕行为开始,往往后续会连续触发一连串的事件,如:DO
- Android-View绘制流程
BlingBest
View树的绘制流程当Activity接收到焦点的时候,它会被请求绘制布局,该请求由Androidframework处理,绘制是从根节点开始的,对布局树进行measure和draw。整个View树的绘制流程在ViewRoot.java类的performTraversals()函数展开,该函数所做的工作可简单概括为是否需要重新计算视图大小(measure),是否需要重新安置视图的位置(layout)
- Android-View的绘制流程解析
九号锅炉
View的绘制流程概述Window的创建:Activity启动时最终会调用ActivityThread.performLaunchActivity来完成启动,这个方法会通过类加载器创建activity的实例对象,并通过Activity.attach()方法创建Window类的实例化对象PhoneWindow.这样window就创建好了。2.DecorView的创建:Activity.onCreat
- android-View之搜索功能的实现
伊泽瑞额
现在很多的app中都有搜索的功能。也就是说搜索栏下面有一个列表,列表中放的内容我们可以在搜索框中输入你想要搜索的内容,这时候,下面的列表就会出现你想要的内容。如图:image.pngxmladapter这个类实现了Filterable接口,然后重写了getFilter()方法,在adapter中定义了一个内部类MyFilter继承Filter类,并重写相关方法,实现数据的过滤。publicclas
- Android-View的绘制及自定义View
Mr.八命
视图View主要分为两类:类别解释特点单一视图即一个View,如TextView不包含子View视图组即多个View组成的ViewGroup,如LinearLayout包含子ViewDecorView是一个应用窗口的根容器,它本质上是一个FrameLayout。DecorView有唯一一个子View,它是一个垂直LinearLayout,包含两个子元素,一个是TitleView(ActionBar
- Android-View的绘制及自定义View
Mr.八命
视图View主要分为两类:类别解释特点单一视图即一个View,如TextView不包含子View视图组即多个View组成的ViewGroup,如LinearLayout包含子ViewDecorView是一个应用窗口的根容器,它本质上是一个FrameLayout。DecorView有唯一一个子View,它是一个垂直LinearLayout,包含两个子元素,一个是TitleView(ActionBar
- Android-View的滑动
爱小丽
滑动效果是如何产生的?滑动一个View从本质上来说就是移动一个View,改变其当前的坐标。所以,想要滑动一个View,就必须监听该View的触摸事件,并且根据事件的坐标,不断的改变View的坐标从而实现View的滑动。Android中的坐标体系Android中的坐标体系分为两种:Android坐标系视图坐标系Android坐标系Android坐标系从图中我们可以看的出来在Android坐标系中以屏
- Android-View的手势分发
Fisher0113
手势事件类型ACTION_DOWNACTION_MOVEACTION_UPACTION_CANCELACTION_OUTSIDEACTION_POINTER_DOWNACTION_POINTER_UPActivity的视图框架ActivitPhoneWindowDecorViewTitleViewActionBarContentViewView滚动相关APIscrollToscrollBycomp
- Android - View的绘制流程二(layout)
H_W_G_T
android布局
在Android-View的绘制流程一(measure)一文中提到,view绘制的核心逻辑都在ViewRoot的performTraversals()方法中,主要分为三个阶段: 第一个阶段是measure,第二个阶段是layout,第三个阶段是drawViewRoot类的performTraversals方法中layout方法的调用,代码如下:privatevoidperformTraversal
- github中多个平台共存
jackyrong
github
在个人电脑上,如何分别链接比如oschina,github等库呢,一般教程之列的,默认
ssh链接一个托管的而已,下面讲解如何放两个文件
1) 设置用户名和邮件地址
$ git config --global user.name "xx"
$ git config --global user.email "
[email protected]"
- ip地址与整数的相互转换(javascript)
alxw4616
JavaScript
//IP转成整型
function ip2int(ip){
var num = 0;
ip = ip.split(".");
num = Number(ip[0]) * 256 * 256 * 256 + Number(ip[1]) * 256 * 256 + Number(ip[2]) * 256 + Number(ip[3]);
n
- 读书笔记-jquey+数据库+css
chengxuyuancsdn
htmljqueryoracle
1、grouping ,group by rollup, GROUP BY GROUPING SETS区别
2、$("#totalTable tbody>tr td:nth-child(" + i + ")").css({"width":tdWidth, "margin":"0px", &q
- javaSE javaEE javaME == API下载
Array_06
java
oracle下载各种API文档:
http://www.oracle.com/technetwork/java/embedded/javame/embed-me/documentation/javame-embedded-apis-2181154.html
JavaSE文档:
http://docs.oracle.com/javase/8/docs/api/
JavaEE文档:
ht
- shiro入门学习
cugfy
javaWeb框架
声明本文只适合初学者,本人也是刚接触而已,经过一段时间的研究小有收获,特来分享下希望和大家互相交流学习。
首先配置我们的web.xml代码如下,固定格式,记死就成
<filter>
<filter-name>shiroFilter</filter-name>
&nbs
- Array添加删除方法
357029540
js
刚才做项目前台删除数组的固定下标值时,删除得不是很完整,所以在网上查了下,发现一个不错的方法,也提供给需要的同学。
//给数组添加删除
Array.prototype.del = function(n){
- navigation bar 更改颜色
张亚雄
IO
今天郁闷了一下午,就因为objective-c默认语言是英文,我写的中文全是一些乱七八糟的样子,到不是乱码,但是,前两个自字是粗体,后两个字正常体,这可郁闷死我了,问了问大牛,人家告诉我说更改一下字体就好啦,比如改成黑体,哇塞,茅塞顿开。
翻书看,发现,书上有介绍怎么更改表格中文字字体的,代码如下
 
- unicode转换成中文
adminjun
unicode编码转换
在Java程序中总会出现\u6b22\u8fce\u63d0\u4ea4\u5fae\u535a\u641c\u7d22\u4f7f\u7528\u53cd\u9988\uff0c\u8bf7\u76f4\u63a5这个的字符,这是unicode编码,使用时有时候不会自动转换成中文就需要自己转换了使用下面的方法转换一下即可。
/**
* unicode 转换成 中文
- 一站式 Java Web 框架 firefly
aijuans
Java Web
Firefly是一个高性能一站式Web框架。 涵盖了web开发的主要技术栈。 包含Template engine、IOC、MVC framework、HTTP Server、Common tools、Log、Json parser等模块。
firefly-2.0_07修复了模版压缩对javascript单行注释的影响,并新增了自定义错误页面功能。
更新日志:
增加自定义系统错误页面功能
- 设计模式——单例模式
ayaoxinchao
设计模式
定义
Java中单例模式定义:“一个类有且仅有一个实例,并且自行实例化向整个系统提供。”
分析
从定义中可以看出单例的要点有三个:一是某个类只能有一个实例;二是必须自行创建这个实例;三是必须自行向系统提供这个实例。
&nb
- Javascript 多浏览器兼容性问题及解决方案
BigBird2012
JavaScript
不论是网站应用还是学习js,大家很注重ie与firefox等浏览器的兼容性问题,毕竟这两中浏览器是占了绝大多数。
一、document.formName.item(”itemName”) 问题
问题说明:IE下,可以使用 document.formName.item(”itemName”) 或 document.formName.elements ["elementName&quo
- JUnit-4.11使用报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误
bijian1013
junit4.11单元测试
下载了最新的JUnit版本,是4.11,结果尝试使用发现总是报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing这样的错误,上网查了一下,一般的解决方案是,换一个低一点的版本就好了。还有人说,是缺少hamcrest的包。去官网看了一下,如下发现:
- [Zookeeper学习笔记之二]Zookeeper部署脚本
bit1129
zookeeper
Zookeeper伪分布式安装脚本(此脚本在一台机器上创建Zookeeper三个进程,即创建具有三个节点的Zookeeper集群。这个脚本和zookeeper的tar包放在同一个目录下,脚本中指定的名字是zookeeper的3.4.6版本,需要根据实际情况修改):
#!/bin/bash
#!!!Change the name!!!
#The zookeepe
- 【Spark八十】Spark RDD API二
bit1129
spark
coGroup
package spark.examples.rddapi
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._
object CoGroupTest_05 {
def main(args: Array[String]) {
v
- Linux中编译apache服务器modules文件夹缺少模块(.so)的问题
ronin47
modules
在modules目录中只有httpd.exp,那些so文件呢?
我尝试在fedora core 3中安装apache 2. 当我解压了apache 2.0.54后使用configure工具并且加入了 --enable-so 或者 --enable-modules=so (两个我都试过了)
去make并且make install了。我希望在/apache2/modules/目录里有各种模块,
- Java基础-克隆
BrokenDreams
java基础
Java中怎么拷贝一个对象呢?可以通过调用这个对象类型的构造器构造一个新对象,然后将要拷贝对象的属性设置到新对象里面。Java中也有另一种不通过构造器来拷贝对象的方式,这种方式称为
克隆。
Java提供了java.lang.
- 读《研磨设计模式》-代码笔记-适配器模式-Adapter
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 适配器模式解决的主要问题是,现有的方法接口与客户要求的方法接口不一致
* 可以这样想,我们要写这样一个类(Adapter):
* 1.这个类要符合客户的要求 ---> 那显然要
- HDR图像PS教程集锦&心得
cherishLC
PS
HDR是指高动态范围的图像,主要原理为提高图像的局部对比度。
软件有photomatix和nik hdr efex。
一、教程
叶明在知乎上的回答:
http://www.zhihu.com/question/27418267/answer/37317792
大意是修完后直方图最好是等值直方图,方法是HDR软件调一遍,再结合不透明度和蒙版细调。
二、心得
1、去除阴影部分的
- maven-3.3.3 mvn archetype 列表
crabdave
ArcheType
maven-3.3.3 mvn archetype 列表
可以参考最新的:http://repo1.maven.org/maven2/archetype-catalog.xml
[INFO] Scanning for projects...
[INFO]
- linux shell 中文件编码查看及转换方法
daizj
shell中文乱码vim文件编码
一、查看文件编码。
在打开文件的时候输入:set fileencoding
即可显示文件编码格式。
二、文件编码转换
1、在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式
&
- MySQL--binlog日志恢复数据
dcj3sjt126com
binlog
恢复数据的重要命令如下 mysql> flush logs; 默认的日志是mysql-bin.000001,现在刷新了重新开启一个就多了一个mysql-bin.000002
- 数据库中数据表数据迁移方法
dcj3sjt126com
sql
刚开始想想好像挺麻烦的,后来找到一种方法了,就SQL中的 INSERT 语句,不过内容是现从另外的表中查出来的,其实就是 MySQL中INSERT INTO SELECT的使用
下面看看如何使用
语法:MySQL中INSERT INTO SELECT的使用
1. 语法介绍
有三张表a、b、c,现在需要从表b
- Java反转字符串
dyy_gusi
java反转字符串
前几天看见一篇文章,说使用Java能用几种方式反转一个字符串。首先要明白什么叫反转字符串,就是将一个字符串到过来啦,比如"倒过来念的是小狗"反转过来就是”狗小是的念来过倒“。接下来就把自己能想到的所有方式记录下来了。
1、第一个念头就是直接使用String类的反转方法,对不起,这样是不行的,因为Stri
- UI设计中我们为什么需要设计动效
gcq511120594
UIlinux
随着国际大品牌苹果和谷歌的引领,最近越来越多的国内公司开始关注动效设计了,越来越多的团队已经意识到动效在产品用户体验中的重要性了,更多的UI设计师们也开始投身动效设计领域。
但是说到底,我们到底为什么需要动效设计?或者说我们到底需要什么样的动效?做动效设计也有段时间了,于是尝试用一些案例,从产品本身出发来说说我所思考的动效设计。
一、加强体验舒适度
嗯,就是让用户更加爽更加爽的用
- JBOSS服务部署端口冲突问题
HogwartsRow
java应用服务器jbossserverEJB3
服务端口冲突问题的解决方法,一般修改如下三个文件中的部分端口就可以了。
1、jboss5/server/default/conf/bindingservice.beans/META-INF/bindings-jboss-beans.xml
2、./server/default/deploy/jbossweb.sar/server.xml
3、.
- 第三章 Redis/SSDB+Twemproxy安装与使用
jinnianshilongnian
ssdbreidstwemproxy
目前对于互联网公司不使用Redis的很少,Redis不仅仅可以作为key-value缓存,而且提供了丰富的数据结果如set、list、map等,可以实现很多复杂的功能;但是Redis本身主要用作内存缓存,不适合做持久化存储,因此目前有如SSDB、ARDB等,还有如京东的JIMDB,它们都支持Redis协议,可以支持Redis客户端直接访问;而这些持久化存储大多数使用了如LevelDB、RocksD
- ZooKeeper原理及使用
liyonghui160com
ZooKeeper是Hadoop Ecosystem中非常重要的组件,它的主要功能是为分布式系统提供一致性协调(Coordination)服务,与之对应的Google的类似服务叫Chubby。今天这篇文章分为三个部分来介绍ZooKeeper,第一部分介绍ZooKeeper的基本原理,第二部分介绍ZooKeeper
- 程序员解决问题的60个策略
pda158
框架工作单元测试
根本的指导方针
1. 首先写代码的时候最好不要有缺陷。最好的修复方法就是让 bug 胎死腹中。
良好的单元测试
强制数据库约束
使用输入验证框架
避免未实现的“else”条件
在应用到主程序之前知道如何在孤立的情况下使用
日志
2. print 语句。往往额外输出个一两行将有助于隔离问题。
3. 切换至详细的日志记录。详细的日
- Create the Google Play Account
sillycat
Google
Create the Google Play Account
Having a Google account, pay 25$, then you get your google developer account.
References:
http://developer.android.com/distribute/googleplay/start.html
https://p
- JSP三大指令
vikingwei
jsp
JSP三大指令
一个jsp页面中,可以有0~N个指令的定义!
1. page --> 最复杂:<%@page language="java" info="xxx"...%>
* pageEncoding和contentType:
> pageEncoding:它