自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 [Skill]Android自动化构建之使用Gradle下载与处理文件

Android自动化构建之使用Gradle下载与处理文件一般情况下,我们的项目构建并不需要再去导入其他文件。但如果自己项目正在维护一个自己的library module,而这个library内又维护着大量会经常更新的SO库,SO库文件很小倒无所谓,但是SO库又多又大时,直接将SO库放入Git中,一个版本更新下来,Git库估计就要炸掉了。而此时,我们利用Gradle的task来执行下载与导入即可解决这

2017-03-30 01:48:22 933

翻译 [Translation]Android代码风格

贡献者的代码风格下面的代码样式是严格的规则,而不是准则或建议。不符合这些规则的Android应用通常不会被接受。我们认识到,并非所有现有代码都遵循这些规则,但我们期望所有新代码都符合。Java语言规则Android遵循标准的Java编码规则以及下面描述的附加规则。不要忽略异常可能很容易编写完全忽略异常的代码,例如:void setServerPort(String value) { try

2017-03-29 23:44:18 410

原创 [Skill]Android自动化构建

Android自动化构建本文的目的不是介绍如何搭建Jenkins,而是介绍如何在Jenkins中搭建Android自动化构建环境。安装Jenkins Gradle插件Jenkins原生并不支持Gradle语法,因此需要安装Gradle插件。下载:Gradle插件上传并安装。创建任务配置安装好Gradle插件之后,跟创建常规任务一样,新建一个自动化构建任务,需要注意的几个点:构建工具选择:In

2017-03-29 23:39:30 826

翻译 [Translation]Google Java Style 指南

Google Java Style 指南1 前言本文档参考并翻译自Google Java Style Guide。Google风格官方使用的是2个空格的缩进,国内常用的缩进为4个空格,因此此文档改为4个空格。同理,自动换行Google是+4个,此处为+8个,switch块缩进Google是2个,此处为4个。本文档作为Java™编程语言中源代码的Google编码标准的完整定义。 当且仅当它遵守本文中的

2017-03-17 22:23:19 2001

原创 [Widget]Android小票打印,蓝牙打印、固定IP打印、黑白图片打印

Printer标准ES-POS命令打印,固定IP或蓝牙打印,支持黑白图片打印预览 项目Github Bintray要求minSdkVersion 5<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.BLUETOOTH"

2016-10-11 18:27:58 4089 5

原创 [Skill]多个开源项目Bintray一键发布环境部署

多个开源项目Bintray一键发布环境部署  我们发布到Bintray上共享的一般是一些库,而不是完整的App,而这些库是依附在我的主项目之中,如果我们主项目只维护一个共享库,那没什么问题,但维护多个开源库呢?不规划一下打包发布的流程,那么就会浪费我更很多的时间在打包发布上。截至至撰文时,笔者的ProjectX主项目已经管理维护者16个开源库,不规划一套打包方案,那么妥妥的能把笔者累死。

2016-10-11 18:24:45 692

原创 [Skill]URLConnection从HTTP重定向到HTTPS

URLConnection从HTTP重定向到HTTPS  也不知什么原因,公司项目的服务端一直在吸引着大波攻击,于是服务端的同学打算把所有HTTP的请求都换为HTTPS,他们决定兼容旧版本于是就将之前的所有HTTP请求全部重定向到另一个HTTPS请求。 项目请求框架搭建初期,考虑到应用也不会使用太复杂的请求模式,于是就简单使用URLConnection完成服务端交互。服务端一修改,全部请求都失败了

2016-10-11 18:22:23 1985

原创 [Skill]Android版本兼容器

Android版本兼容器随着Android版本一代代发布,碎片化的问题越来越严重,不过好在趋势上市面上的版本已经开始比较集中了。但我们终究还是要面对版本兼容问题。我们不能因为要用高版本方法而提高最低版本限制,高版本里炫酷的效果及高效的方法只会导致你的最低版本显示越来越高,而官方的解决方案(Support-v4)无疑是给了我们新的启示。

2016-10-11 18:17:19 809

原创 [Widget]RecyclePagerAdapter-实现ViewPager复用回收的PagerAdapter

RecyclePagerAdapter-实现ViewPager复用回收的PagerAdapter实现ViewPager页卡View复用回收的PagerAdapter,只要是页面构造一样,则可以使用复用回收机制,同时也支持设置不同的viewType来实现多种样式的页卡回收复用,套用RecycleView的Adapter实现机制。要求com.android.support:support-v4min

2016-09-21 19:56:52 1203

原创 [Skill]getApplicationInfo的坑

getApplicationInfo的坑一般情况下我们通过PackageManager.GET_UNINSTALLED_PACKAGES来检查应用是否安装,且不论其本身存在的不正确性,自Android 4.2(API 17)以后,多账户的出现,其又新出现一些坑。现在Android 7.0(API 24)使用MATCH_UNINSTALLED_PACKAGES 将其替换。

2016-09-19 18:08:52 2264

原创 [Skill]慎用onBackPressed()

慎用onBackPressed()Android中在按下back键时会调用到onBackPressed()方法,onBackPressed相对于finish方法,还做了一些其他操作,而这些操作涉及到Activity的状态,所以调用还是需要谨慎对待。

2016-09-18 18:15:25 421

原创 [Widget]SelectionView-快速跳选View

SelectionView快速跳选View,与列表视图搭配使用(ListView、RecyclerView),常用于联系人列表快速选取。

2016-09-06 16:13:03 431

原创 [Widget]MultiActionTextView-文字可点击TextView

MultiActionTextView文字可点击TextView,设置文字部分可点击,点击执行不同操作。预览要求无链接GithubBintray使用基本布局<am.widget.multiactiontextview.MultiActionTextView android:layout_width="match_parent" android:layout_height="

2016-09-06 15:46:48 495

原创 [Widget]HeaderFooterGridView-头尾GridView

HeaderFooterGridView头尾GridView,支持AUTO_FIT模式,头尾模式有两种,无反射代码。

2016-09-06 15:16:49 459

原创 [Widget]DrawableRatingBar-图片评级

DrawableRatingBar图片评级,双图片评级控件,可设置图片间距,支持拖动进度及点击进度,可控制最大值最小值,及是否可手动。

2016-09-02 16:55:29 328

原创 [Widget]ReplaceLayout-交替布局

ReplaceLayout交替布局,配合TabStrip使用,达到伴随ViewPager动作而进行改变的效果,继承自FrameLayout,通过设置ReplaceAdapter来完成管理子项View的变化,并通过move(int, int, float)方法和moveTo(int)方法达到变化的效果。

2016-09-02 15:42:20 988

原创 [Widget]WrapLayout-自动换行布局

WrapLayout自动换行布局,水平排列子项,并自动换行,支持不等长不等宽子项,且可以设置垂直间距与水平间距及子项对齐模式。一般用于标签及词条条目进行自动排版。

2016-08-30 15:51:04 1430

原创 [Widget]StateFrameLayout-状态帧布局

StateFrameLayout一般网络交互的状态提示及处理大多数情况下考虑使用Dialog,在一切状态处理理想状态下时,使用Dialog进行交互是可行的。但稍微一不注意,使用Dialog则会出现一系列隐藏的Bug。状态帧布局,通常用于网络请求的四种状态,普通、载入、错误、空白。支持Drawable或者View来展示,也可以混搭。

2016-08-29 18:14:19 643

原创 [Widget]ShapeImageView-图形裁剪ImageView

ShapeImageView图形裁剪ImageView,API 21 及以上 使用 setOutlineProvider 方式实现,支持动态图;以下使用 BitmapShader 方式实现。 支持固定高宽缩放比缩放,支持前景Drawable,支持ImageView的所有ScaleType,且API 21具备更高性能。预览要求minSdkVersion 4链接GithubBintray使用基

2016-08-23 18:13:02 714

原创 [Widget]IndicatorTabStrip-移动式下标渐变缩放Tab

IndicatorTabStrip继承自BaseTabStrip,移动式下标渐变缩放Tab,Item不建议超过5个,为ViewPager添加如PagerTitleStrip一样的Tab,但支持更多自定义功能,并支持为Tab增加标记点功能,并可以自定义标记点各自的位置及显示状态以及背景等。预览要求minSdkVersion 9保持跟其他官方支持库版本一致(如:com.android.support

2016-08-22 18:25:14 435

原创 [Widget]TagTabStrip-ViewPager页面切换标记点

TagTabStrip继承自BaseTabStrip,实现ViewPager标志小点,一般用于功能引导页面及新功能简介页,为ViewPager添加标志小点,并不仅限于小点,标志由设置的Drawable决定,普通模式为双Drawable交替模式,亦可设置为单Drawable缩放模式。

2016-08-22 17:37:45 445

原创 [Widget]GradientTabStrip-微信式底部渐变栏

GradientTabStrip继承自BaseTabStrip,实现微信式渐变底部Tab效果,为ViewPager添加如PagerTitleStrip一样的Tab,但支持更多自定义功能,并支持为Tab增加标记点功能,并可以自定义标记点各自的位置及显示状态以及背景等。

2016-08-19 19:05:36 1015

原创 [Widget]BaseTabStrip-用于捆绑ViewPager实现复杂页面切换效果的TabStrip的基类

BaseTabStrip支持库v4中本就存在控件PagerTitleStrip,但对于各式各样的需要,其还是满足不了。但每一种样式都重新写一些基础方法也浪费,于是将通用方法提出写成基类,而具体样式就交给子类实现。BaseTabStrip继承自View,可自动捆绑ViewPager,为基础类,仅实现了一些通用基础逻辑。具体的实现效果需要实现与重写部分方法。要求

2016-08-12 17:58:43 562

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除