2016-08-03 Jamling
简介 在[QuickAF]框架中,标题栏不使用Android自带的ActionBar或ToolBar,而是使用一个IOS风格的TitleBar来实现。TitleBar的使用非常灵活,主要分为三块区域: - 左侧区域,一般放置一个返回按钮,父类AfActivity已经默认点击为finish操作 - 中间区域,一般显示页面的标题,如“订单详情” - 右侧区域,一般放置本页面的相关操作图标或文本按钮 继续阅读 »
2016-08-02 Jamling
相信大家在做Android开发的时候,一定遇到以下问题: 界面A上有一个按钮B1,点击时,需要变换背景颜色 界面B的按钮B2与界面A的按钮B1外观一样,只是颜色不同 通常我们的解决办法是向UI要按钮的背景图,不同的状态是一张图片。以上为例,我们需要向美工索取4张图片。 按钮B1(常态与点击态),按钮B2(常态与点击态),然后再定义selector drawable xml,如果美工给的不是9.png,我们还要使用nine-patch工具将其转为9.png图片。 大家可以想象一下,如果状态更多,而页面上的按钮又各不相同的话,天啊!那该有多少图片,多少个selector啊,得花多少时间啊!有没有快捷的解决办法呢?答案当然是有! 继续阅读 »
2016-08-02 Jamling
Android倒计时控件,通常在发送验证码时用得最多。其实Android系统提供了一个倒计时控件叫做CountDownTimer,不过这个控件没有与界面控件绑定,在这里,我要讲述的是如何自己写一个倒计时的控件。 源码 首先放上CountDownButton的源码 ```java /** * CountDownButton used for send phone verify code etc. * * @author Jamling */ public class CountDownButton extends RoundButton { private long totalTime = 60 * 1000;/ 继续阅读 »
2016-08-02 Jamling
目前许多Android App都带有一个底部栏,通过底部栏可以切换Tab,比如微信,QQ都是这种风格。对于像小红点之类的醒目提醒,用得最多的就是BadgeView了,不过,如果底部栏是RadioGroup的话,那么不好意思BadgeView可不支持哦(如果使用BadgeView,RadioGroup就不能愉快地工作了)。那么如何即保留使用RadioGroup又能添加BadgeView的功能呢?请接着阅读本文。 本文阐述的是使用QuickAF的RadioBadgeView来解决RadioButton与BadgeView的冲突。在RadioButton上显示Badge消息提醒,需要将原来的RadioButton替换成RadioBadg 继续阅读 »
2016-07-28 Jamling
引言 Hexo的NexT主题非常流行,之前看过某博友的博客,使用的就是NexT主题,在文章列表页面,竟然还显示了文章的阅读次数!Hexo是静态博客,像阅读次数的实现必须借助第三方工具。早期Nova主题使用的是友言评论,不像多说评论开放了许多API,所以,从版本0.1.0开始,本站使用的Nova主题就换成了多说。在多说的获取文章评论、转发数API中,views即为文章阅读数,不过好像多说对非官方的网站不开放此字段,views返回的一直为0。昨天阅读了一下博友的为NexT主题添加文章阅读量统计功能这篇文章,原来NextT的阅读数是借助云API来实现了。所以,立即动手,也为本站的Nova主题添加阅读计数功能。 如果有使用非NexT主题 继续阅读 »
2016-07-28 Jamling
引言 Hexo的评论系统在国内一般选用多说或友言,在我的博客主题中,早期使用的是友言,在0.1.0版本之后,我在主题中将其替换成了多说。为什么要替换呢?因为友言对于评论数,转发数等支持不好,而且也不开放API。 多说配置 登录 直接访问http://duoshuo.com 登录,多说支持QQ,微博等多种方式登录。 创建二级域名 登录多说后,先创建一个xxx.duoshuo.com的二级域名,比如我创建的ieclipse.duosuo.com,然后在管理台中做相应的配置。因为都是中文,就不详细说了。特别提一下的是以下几点: 域名白名单,在设置中,在域名白名单中添加本地地址,如127.0.0.1,不然有可能本地测试时,发现 继续阅读 »
2016-07-21 Jamling
简介 带过滤功能的Hexo首页生成器插件。在官方的首页生成器基础上添加了过滤指定分类/标签的功能。比如,在首页只显示指定分类下面的文章列表。 English 安装 bash $ npm install hexo-generator-index2 --save $ npm uninstall hexo-generator-index --save 配置 ``` yaml index_generator: per_page: 10 order_by: -date include: - category Web # 只包含Web分类下的文章 exclude: - tag Hexo # 不包含标 继续阅读 »
2016-07-21 Jamling
痛点 从2013年开始,本人开始活跃于github,以前托管于sourceforge、svn spot和oschina的开源项目,陆续迁移到了github。此前,我一直使用的是wiki系统来维护相关开源项目的文档及下载等。那时,Markdown还没有现在这么流行,在sourceforge等网站,我几乎不放文档。但迁移到github后,将之前的wiki页面渐渐转成了Markdown页面。在迁移到github之后,我比较重视文档,源代码的修改,有可能需要更新文档。此前wiki网站因为访问太慢,空间也不是特别稳定,在今年终于决定放弃维护,转而使用github pages功能来托管这些项目文档。 github pages是一个静态空间, 继续阅读 »
2016-07-18 Jamling
Hexo高亮 hexo已实现代码高亮,代码封装在hexo-util插件中,使用的是highlight.js,通过include_codetag标签来使用,功能已经很强大了,而且自带行号显示,可以满足大多数博主的需求了。但是它仍然存在一些局限性,比如在Nova主题中,有些语言不支持,无法高亮,而且界面也比较丑,所以个人还是倾向于自由使用[hightlight.js]来高亮代码,使用起来比较灵活,还能扩展一些功能,但是highlight.js默认是不带行号的。为此,也是遇到了不少坑。后来在某歪果仁的博客中找到一个行号解决方案,在其基础上,终于实现了一个较为理想的代码高亮方案。 如果想和我一样爱折腾,请继续阅读本文,再次声明,本系列需 继续阅读 »
2016-07-18 Jamling
引言 {% blockquote hexo.io https://hexo.io/zh-cn/docs/plugins.html 插件 %} Hexo 有强大的插件系统,使您能轻松扩展功能而不用修改核心模块的源码。在 Hexo 中有两种形式的插件: 脚本(Scripts) 如果您的代码很简单,建议您编写脚本,您只需要把 JavaScript 文件放到 scripts 文件夹,在启动时就会自动载入。 插件(Packages) 如果您的代码较复杂,或是您想要发布到 NPM 上,建议您编写插件。首先,在 node_modules 文件夹中建立文件夹,文件夹名称开头必须为 hexo-,如此一来 Hexo 才会在启动时载入否则 He 继续阅读 »