
View
系统控件的介绍和自定义View实现
成长零一
这个作者很懒,什么都没留下…
展开
-
【笔记】性能优化——ConstraintLayout使用
目录相对定位包裹与填充角度定位比例定位引导线定位控件宽高比例链式布局官网对ConstraintLayout的描述是这样的:ConstraintLayout是一个允许你用灵活的方式定位和调整控件尺寸的ViewGroup。A ConstraintLayout is a ViewGroup which allows you to position and size...原创 2019-03-24 16:40:09 · 426 阅读 · 0 评论 -
【笔记】ProgressBar系统实现圆角渐变色进度条
纯色进度条最大进度100,当前进度30,二级进度60 <ProgressBar style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_hei...原创 2019-02-19 22:49:33 · 1715 阅读 · 0 评论 -
【笔记】使Toast在不同版本系统下都能显示的几种方案
系统原生的Toast是用了INotificationManager类来显示的, Android 5.0以上系统用户只要关闭了通知权限,在大部分手机上Toast也将不能显示(有部分国产手机5.0以上的系统禁了通知权限仍能显示Toast)。 /** * Show the view for the specified duration. */ public voi...原创 2019-01-15 22:28:21 · 673 阅读 · 0 评论 -
【笔记】ItemDecoration——分组布局GroupItemDecoration
RecyclerView中加载列表需要根据某些约定条件分组很正常,根据字符分组地区,根据月份分组账单等。如果是在item中控制是否是分组第一个显示一组的头部就显得有点low了。接下来记录下为分组列表准备的GroupItemDecoration:GroupBeanItemDecoration是分割线,添加灵活,为了对应列表中每个item,记录每个item的身份信息。一般情况下有以下四个应该是...原创 2018-12-09 15:43:27 · 920 阅读 · 0 评论 -
【笔记】ItemDecoration——网格布局GridItemDecoration
RecyclerView可以说是ListView和GridView的升级综合版,在Android5.0推出,其特点如下:1、支持不同方向、不同排版模式,实现多种数据展示形式(包含ListView、GridView、瀑布流);2、装载了ViewHolder的回收机制,无需我们考虑View的复用;3、取消了OnItemClick点击事件,需自己实现;4、可控制Item增删动画;5、...原创 2018-12-02 15:32:03 · 6738 阅读 · 1 评论 -
【笔记】Android使用RecyclerView实现树形列表升级版
这是一个功能多样的树形列表,树形列表最基本的功能是能够进行节点的收拢和展开,响应每一级节点的点击事件也是必须的,本篇说的是在我之前实现的树形列表1.0基础上修改完善之后的升级版树形列表。树形列表1.0具有如下功能:展开收拢;响应点击和选中事件;自定义每个节点的布局和保持的数据结构;升级版功能:展开收拢时不会改变子节点列表的状态,之前只记录了选中状态;升级版可以根据自己需要来设置选中子节点时是否也需...原创 2018-02-15 16:06:26 · 5012 阅读 · 0 评论 -
【笔记】Android使用RecyclerView实现可自定义节点的树形列表
树形列表的基本功能是可以展开收拢,该列表还可以响应选中、单项点击事件。使用者可以自定义需要的各级节点的布局样式,在适配器的展开、选中和单项点击回调中实现需要的效果。效果展示使用说明在项目build.gradle中添加maven { url "https://jitpack.io" }添加引用(可在github获取最新版本)compile 'com.g原创 2018-02-04 16:10:06 · 2149 阅读 · 0 评论 -
【笔记】仿支付宝密码输入框
继承EditText实现一个仿支付宝密码输入框。自定义属性 <com.sjl.pwdedittext.view原创 2016-11-29 23:16:26 · 490 阅读 · 0 评论 -
【笔记】通讯录使用侧栏字母索引
侧边字母索引在通讯录、地区选择之类的长listview中比较实用。自定义Viewpublic class SectionIndexBar extends View { //索引 private String[] indexs = {"#", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M",原创 2016-12-11 17:51:09 · 2422 阅读 · 0 评论 -
【笔记】android滑动菜单
万恶的产品总是没事找事,侧滑菜单这种东西感觉都已经过时了,却还要用。实在没办法只能找了下资料,这里自己把认为实现起来比较容易的方法做下记录。DrawerLayout + NavigationView布局<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/re原创 2016-12-20 22:37:38 · 341 阅读 · 0 评论 -
【笔记】自定义控件——ViewPager指示器
ViewPager的用途很广,像滚动广告、引导页等就常用这个控件实现,而在这些控件里常常会需要一个指示器来表示当前所显示的是第几张广告或第几页。不堪回首的过去以前在滚动广告时常常在布局文件中放一个LinearLayout,然后在代码中动态创建ImageView,添加到容器中,dotList = new ArrayList();for (int i=0;i<list.size();i+原创 2017-03-19 17:42:44 · 540 阅读 · 0 评论 -
【笔记】简单实现可向周围展开的菜单容器
前些天在谷歌开发者公众号上看到一篇文章——取舍的艺术:Evernote。其中有说道一个效果,在悬浮按钮上应用快捷指令的设置,点击展开后呈现六种不同的记录笔记的方式,结合菜单展开时的动画效果,让人眼前一亮。大致思考了一下,可以将这样的菜单分为两部分,一部分是一直显示着的悬浮按钮,另一部分是带有动画效果可以展开消失的菜单部分。LinearLayout的线性布局显然很适合,可原创 2017-03-23 21:48:22 · 566 阅读 · 0 评论 -
【笔记】ViewPager+自定义控件实现的日历控件CalenderView
接入OEM模块,产品想要人家App上的日历控件,只能乖乖自己写一个。。。需求实现一个能左右滑动的,带选中日期效果的日历控件。看到左右滑动,第一反应就是ViewPager,现成的就是方便。接下来要实现的就是每月的日历了,并且可以点击选中某一天。无限滑动ViewPager先把简单的实现了,理论上来说,日历应该可以一直往前翻,或者一直向后翻,就是一个可以无限滚动的ViewPage原创 2017-06-24 15:11:31 · 1017 阅读 · 1 评论