之前产品那边提了这样的需求:用户输入完信息后要求点击非输入框时要把软键盘隐藏。当时看到这个需求觉得没啥难度也比较实际,于是晕晕乎乎的就实现了,可后来产品那边说了只要有输入框的页面全都要按照这个逻辑来,美其名曰用户体验……当时项目中带有输入框的页面不少,如果每个页面都写一遍逻辑,这就严重违背了《重构,改善既有代码的设计》这本书中的说的事不过三原则(事不过三原则说的是如果同样的逻辑代码如果写过三遍以上,就要考虑重构)。于是当时花了点时间搞了个通用的轻量级的关闭键盘的小控件ImeObserverLayout……...
分类:
移动开发 时间:
2016-06-20 08:58:46
阅读次数:
431
前言
在自定义ViewGroup中,有时候需要实现触摸事件拦截,比如ListView下拉刷新就是典型的触摸事件拦截的例子。触摸事件拦截就是在触摸事件被parent view拦截,而不会分发给其child,即使触摸发生在该child身上。被拦截的事件会转到parent view的onTouchEvent方法中进行处理。但是这个交互过程还是挺复杂的,有多种情况,今天我们就来分析一下吧。这篇分析文章已...
分类:
移动开发 时间:
2016-06-19 10:13:52
阅读次数:
406
涉及到滑动,就涉及到VIEW,大家都知道,Android的UI界面都是由一个一个的View以及View的派生类组成,View作为基类,而常用的布局里面的各种布局就是它派生出来的ViewGroup的子类,ViewGroup作为各个组件的容器搭建了整体的UI。以下是android UI的结构示示意图: ...
分类:
其他好文 时间:
2016-06-19 06:39:21
阅读次数:
201
对自定义viewgroup的步骤和需要了解的知识做了说明,附加一个项目做为实例以便更加清晰的理解viewgroup过程!...
分类:
移动开发 时间:
2016-06-17 22:39:39
阅读次数:
322
在分析Android事件分发机制前,明确android的两大基础控件类型:View和ViewGroup。View即普通的控件,没有子布局的,如Button、TextView. ViewGroup继承自View,表示可以有子控件,如Linearlayout、Listview这些。今天我们先来了解Vie ...
分类:
移动开发 时间:
2016-06-17 12:41:41
阅读次数:
191
本篇文章讲的是Android 自定义ViewGroup之实现标签流式布局-FlowLayout,开发中我们会经常需要实现类似于热门标签等自动换行的流式布局的功能,网上也有很多这样的FlowLayout,但不影响我对其的学习。和往常一样,主要还是想总结一下自定义ViewGroup的开发过程以及一些需要注意的地方。按照惯例,我们先来看看效果图
一、写代码之前,有几个是问题是我们先要弄清楚的:
1、什...
分类:
移动开发 时间:
2016-06-17 00:49:40
阅读次数:
380
Android的Touch事件处理机制比较复杂,特别是在考虑了多点触摸以及事件拦截之后。 Android的Touch事件处理分3个层面:Activity层,ViewGroup层,View层。 首先说一下Touch事件处理的几条基本规则。 1.如果在某个层级没有处理ACTION_DOWN事件,那么该层 ...
分类:
移动开发 时间:
2016-06-16 01:25:12
阅读次数:
161
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38352503 ,本文出自【张鸿洋的博客】 1、概述 上一篇已经基本给大家介绍了如何自定义ViewGroup,如果你还不了解,请查看:Android 手把手教您自定ViewGroup ...
分类:
编程语言 时间:
2016-06-15 01:28:19
阅读次数:
214
国际惯例,先来效果图
在阅读本文章之前,请确定熟悉【Scroller】相关的知识,如果不熟悉,请小伙伴儿先百度后再来吧。
假如你已经知道【Scroller】了,那么就接着往下看吧。
首先,我们把侧拉菜单的构造给解析出来。多次观看上面的效果图,我们可以得出以下的结论。
整体可以看做是一个ViewGroup,这个ViewGroup包含了最多三个子View(分别是左菜单的...
分类:
移动开发 时间:
2016-06-14 19:37:52
阅读次数:
497
首先自定义ppw是要继承Popupwindow 的 而要成功的显示出自定义的ppw就必须实现下面的三句代码 // 必要的三要素下面,不然popWind显示不出来 this.setContentView(mView); this.setWidth(ViewGroup.LayoutParams.MATC ...
分类:
移动开发 时间:
2016-06-13 18:47:13
阅读次数:
183