CoordinatorLayout 之深入理解

上篇在对 CoordinatorLayout 作了一些简单介绍,以了解 CoordinatorLayout 带来的一些特性和常见用途。本篇将对 CoordinatorLayout 的源码进行一些分析,以了解它的相关特性的运行原理,以及 Behavior 的执行过程。Android design library 版本:26.1.0。刚打开 CoordinatorLayout 的源码看了一下,单这一个文...
阅读(112) 评论(0)

CoordinatorLayout之初步认识

CoordinatorLayout是2015 I/O大会发布的一种布局,它可以说是一个非常强大的FrameLayout,主要用于协调(Coordinate)子控件,来帮助实现它们之间的一些交互效果。它适合用于应用的顶层布局,或是View之间交互的一个容器。本篇主要是对CoordinatorLayout的相关内容进行一个初步的认识,看看CoordinatorLayout都提供了哪些特性来帮助完成Vi...
阅读(71) 评论(0)

一步步打造自己的通用上拉加载布局

背景下拉刷新是App交互中非常常见的场景,而与其对应的上拉加载,在很多场景中也已经是用户意识中理所当然的一种交互了。在很久之前的项目开发中,就已经有上拉加载的这个需求。但是那时苦于没有找到一个合适的上拉加载的库,而项目迭代又紧,那时自己实现恐时间上来不及或者引入其他bug,就暂时用了秋百万的cube-sdk中的点击加载。 在今年该项目的又一次迭代开发中,由于使用到了RecyclerView,而对应...
阅读(1746) 评论(3)

ViewPager与CoordinatorLayout一起使用的一个Bug

本文记录一个关于ViewPager与CoordinatorLayout一起使用的Bug,目前虽然有解决问题的方法,但是原因依然没有找到。最初的布局是正常的项目最初的布局树是这样的:CoordinatorLayout --RelativeLayout(height:match_parent) ----各种View ----FrameLayout(height:wrap_content) ------l...
阅读(421) 评论(0)

开源项目——让okhttp3优雅地打印日志

现在应该有许多人都是使用okhttp来作为项目的网络请求的底层库,那么,还有人在沿用着对每个请求在执行前后手动打印一下参数及地址这种古老的日志打印方式吗?okhttp的灵活而强大的特点之一,就是其提供了一个拦截器接口,使得我们在打印日志时极为方便,并且对我们的接口代码无入侵性。 本篇文章推荐一个okhttp3的日志打印库,无论是使用古老方式来打印日志的,还是使用square官方okhttp3的...
阅读(563) 评论(0)

Android开发技巧——使用RecyclerView实现分组列表

有一个多月没写原创博客了,介绍一下使用RecyclerView来实现分组列表。之所以使用RecyclerView,主要原因还是因为ExpandableListView无法实现设计师所需要的分割线。 本篇内容偏简单,主要是讲如何集成使用。这一使用场景还是相对常见的,较适合初学者进阶。实现原因及效果在上一次的项目版本迭代中,有使用到分组列表,但由于Android自带的ExpandableListVie...
阅读(1232) 评论(3)

Android开发技巧——写一个StepView

在我们的应用开发中,有些业务流程会涉及到多个步骤,或者是多个状态的转化,因此,会需要有相关的设计来展示该业务流程。比如《停车王》应用里的添加车牌的步骤。 通常,我们会把这类控件称为“StepView”。上图的这种设计相对来说还是比较简单的,下面我们以它为例,来一步步写我们的“StepView”。那么,实现这样的一个“StepView”,我们会需要哪些知识呢?所需知识 布局测量 图形文字绘制 文...
阅读(977) 评论(0)

Android开发技巧——实现设计师给出的视觉居中的布局

本篇主要是对自定义控件的测量方法(onMeasure(int widthMeasureSpec, int heightMeasureSpec)在实际场景中的运用。 在移动应用的设计中,经常有这样的界面:某个界面的元素非常少,比如空列表界面,或者某某操作成功的界面,只有一两个像素在中间。但是它们在某个布局里又不是数学上的那个居中,而是经过设计师调出来的“视觉居中”。这种“视觉居中”内部是怎么计算的,我...
阅读(719) 评论(0)

Android开发技巧——FlingViewPager与RecyclerPagerAdapter

刚才看了一下,距我上次写原创博客已经有三个多月了。当然,这三个多月一直没有去写博客的借口有很多,这次就不赘述了。 本篇讲的是在上次项目开发中封装的两个类,这两个类除了正好是分别继承自ViewPager及PagerAdapter,并没有其他更多的联系,所以我主要是介绍一下它们所涉及到的一些比较实用的开发技巧及知识。FlingViewPager首先说一下我写这个类的场景。在我们的一个项目中,有以下需求...
阅读(616) 评论(0)

Android开发技巧——使用Drawable实现小红点

在产品的设计中,总难免需要我们开发去实现各种各样的小红点,小红点,小红点。 通常,我们可能会这样做: 用一个View实现小红点,放在相对布局里,设置好内边距或外边距,让它位于图片的右上角。 或者是给图片套一个相对布局,设置好图片的外边距,然后把表示小红点的View放在这个相对布局里面的右上角。这个应该是最简洁直观的实现方法。然而,它也有它的局限之处。比如在我这次的开发当中,一开始只...
阅读(2238) 评论(2)

说一说关于破解支付宝AR红包的事

当朋友圈的你们才开始分享支付宝AR红包的消息的时候,我已经对它动了一二三四次歪脑筋了,虽然事实证明并不是那么顺利,至今我也只在电脑前识别出5个不知道在哪里的红包,其中一个还因为定位信息不符开不了。 昨天上午听公司的小伙伴说起支付宝新推出的AR红包,LBS加图像识别的另一个创新,可说是支付宝在社交互动这一块终于打出来的一张好牌。然而,在许多人还在奔走相告这个消息的时候,我已经和小伙伴们对它动起了歪心思...
阅读(5095) 评论(4)

Android开发技巧——BaseAdapter的另一种优雅封装

RecyclerView虽然因其灵活性、高效性等特点而备受好评,但也不是一定得用它把ListView给替代掉。在某些场景中,ListView还是相对更适合的。比如数据量不大,不频繁更新,并且需要简单地设置一下divider或header、footer的时候,相对于RecyclerView的繁琐,ListView在实现上则更表现得更方便和简洁。过去的封装在使用ListView的过程中,为了复用List...
阅读(1826) 评论(3)

解放双手——Android的自动化构建及发布

在一个App从开发到测试的过程中,我有很长一段时间都是这样做的:打包,上传到tower,在tower上编写本次更新说明,通知测试。一般情况下,打包及上传的过程大概也就2分钟。除此之外,由于项目代码有作混淆,并且使用了bugly,因此在发出每个版本之后还需要将混淆的mapping.txt传到bugly上。当日复一日,并且有时还遇到网络较差的情况时,这种人工手动的工作方式就很影响工作效率及心情了。因此,...
阅读(1947) 评论(1)

NavigationView使用过程的问题解决

NavigationView是android support design库提供的侧滑面板控件,通常与support v4库里的DrawerLayout侧滑控件搭配使用。以下是使用过程中遇到的问题及解决方式。菜单图标颜色被渲染成其他颜色NavigationView默认会按照 Android 设计规范,将菜单里的图标渲染成itemIconTint所设置的颜色。如果你没有设置这个属性,则会渲染成它默认的...
阅读(1353) 评论(0)

解决使用BottomSheetDialog时状态栏变黑的问题

问题描述当使用support里的design 库里的BottomSheetDialog时,在6.0的机器上当对话框弹出时系统状态栏会变黑,如下图所示: 一开始以为是我用的姿势不对,试过对style配置状态栏颜色,配置其他可能影响到的属性都没成功,今天google了一下,发现应该是BottomSheetDialog本身实现的问题,见:https://code.google.com/p/andro...
阅读(4173) 评论(7)
81条 共6页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:2027258次
    • 积分:13771
    • 等级:
    • 排名:第1020名
    • 原创:135篇
    • 转载:0篇
    • 译文:86篇
    • 评论:870条
    欢迎访问我的博客
    QQ群
    博客专栏
    最新评论
    我的公众号
    微信关注我的公众号
    站长统计