冲突

Android ScrollView滑动事件和子控件点击事件冲突

ε祈祈猫儿з 提交于 2019-12-10 04:06:35
问题描述: 父控件是一个ScrollView,然后上面排满了按钮,类似于支付宝 这样,按钮都有onclick事件,这样滑动的时候如果接触点在按钮上,ScrollView就滑不动了。 解决方案是重写ScrollView 的onInterceptTouchEvent方法: public class PersonScrollView extends ScrollView{ public PersonScrollView(Context context) { super(context); } @Override public boolean onInterceptTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_MOVE) { return true; } return false; } } 原理很简单,就是事件在响应链里面是一直传递到叶子控件才进行处理,而在我的这个场景里,触点在按钮上的时候事件的叶子节点就是按钮,所以ScrollView不会响应滑动事件,解决思路就是在滑动事件传递到ScrollView的时候就进行拦截响应,不再往下传递。 来源: oschina 链接: https://my.oschina.net/u/2276921/blog/811565

解决jQuery和其它库的冲突

纵然是瞬间 提交于 2019-12-03 02:58:46
在jQuery库中,几乎所有的插件都被限制在它的命名空间里。全局的对象都很好地存储在jQuery命名空间里,因此当把jQuery和其它javascript类库一起使用时,不会引起冲突.(注意:默认情况下,jQuery用$作为自身的缩写而以) 如果jQuery类库和别的类库冲突的话,可以使用jQuerynoConflict()函数来将变量$的控制权移交出给其它的javaScipt库。看下面小片断代码 <script type="text/javascript" src="../JS/JsCOM.js"></script> <script type="text/javascript" src="../jQuery/jquery-1.3.2-vsdoc2.js"></script> 假设JsCOM.js库中,有这样一个函数 function $(objName) { if (document.getElementById) { return eval('document.getElementById("' + objName + '")') } else { return eval("document.all." + objName) } 大家都知道jQuery里面也一个这样的函数,为了不引起冲突,我们将jQuery的变量$的控制权移交出给别的javascript库 jQuery

git pull 没有想象中的那样怕怕啊-实战解决冲突

北慕城南 提交于 2019-12-02 21:53:34
NAME git-pull - Fetch from and integrate with another repository or a local branch SYNOPSIS git pull [options] [<repository> [<refspec>…​]] DESCRIPTION Incorporates changes from a remote repository into the current branch. In its default mode, git pull is shorthand for git fetch followed by git merge FETCH_HEAD . More precisely, git pull runs git fetch with the given parameters and calls git merge to merge the retrieved branch heads into the current branch. With --rebase , it runs git rebase instead of git merge . <repository> should be the name of a remote repository as passed to git-fetch[1]

git merge —— 为什么比diff & patch好

℡╲_俬逩灬. 提交于 2019-12-02 21:53:06
基于开源软件做二次开发是很常见的。这类开发常常遇到的问题是,当我们已经针对开源软件做了很多修改,与上游主干版本之间已经渐行渐远;此时上游主干有了更新,此时如何把上游的更新与我们自己的修改合并起来? 假定上游主干版本为A,我们在A的基础上开发了A';此时上游主干更新到B,现在我们要做的事情就是相应更新到B'。 一个做法是用diff工具生成A'与A的差异(patch),然后在B上面应用这个patch,期望得到B'。用数学的公式表示就是: B' = B + (A' - A) ···· (i, using diff & patch) 如果使用git做版本控制,以上的做法是可行的,但不是最优的。更好的做法是 以A为基础,生成A'和B两条分支,然后执行 git checkout B; git merge A' 。有一种误解认为这个merge操作执行的就是上面的公式(i),其实不然,git merge的算法叫做3-way merge(准确的说叫recusive 3-way merge,当两个分支有多个共同父亲时它比普通3-way merge表现得更好),用公式表示如下: B' = merge(A, A', B) ···· (ii, using 3-way merge) (ii) 比 (i) 好在哪里? 用diff工具生成patch时,我们所做的每一处修改,会连同它的“定位信息”(行号

Maven依赖进阶

扶醉桌前 提交于 2019-11-28 19:57:05
使用maven的程序员都会遇到一个问题,那就是maven依赖冲突的问题,这会导致ClassNotFound或者MethodNotFound这样的异常。其实只要明白maven依赖的根本性的原则就不怕这样的问题了。 一、maven依赖原则 1.间接依赖路径最短优先 一个项目test依赖了a和b两个jar包。其中a-b-c1.0 , d-e-f-c1.1 。由于c1.0路径最短,所以项目test最后使用的是c1.0。 2.pom文件中申明顺序优先 有人就问了如果 a-b-c1.0 , d-e-c1.1 这样路径都一样怎么办?其实maven的作者也没那么傻,会以在pom文件中申明的顺序那选,如果pom文件中先申明了d再申明了a,test项目最后依赖的会是c1.1 所以maven依赖原则总结起来就两条: 路径最短,申明顺序其次 。 二、如何解决Jar冲突 遇到冲突的时候第一步要找到maven加载的到时是什么版本的jar包。通过dependency:tree查看依赖树。 [INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ web-hsf --- [INFO] com.lubby:web-hsf:war:0.0.1-SNAPSHOT [INFO] +- org.apache.geronimo.specs:geronimo