摘要:前言 设计师和程序猿沟通总是需要花费不少时间,并且很多时候因为没有规范可依最终导致设计师修改设计或切图(开发童鞋一般比设计师更强势)。凡是这类问题都可以通过规范来改善和提高效率。网上很多编码规范和设计规范,但是缺乏程序猿和设计师之间沟通的规范。下面我和大家分享一下目前我工作中程序猿和设计师的沟通规范
阅读全文
摘要:hybrid方案背景 大部分业务都是在不停改变的,我们希望native不发布新版本就可以让线上用户使用新功能。我们要实现这样的方式,采用h5来实现就可以满足这一要求,准确说是native里提供一个装载h5的webview容器。单独使用h5完成整个应用和单独使用native来实现在体验上相差太大,所以
阅读全文
摘要:前言最近Android studio(下文简称AS)官方发布了正式版,目前火得不行。个人认为主要是因为android是google自家的产品,AS也是他自己搞的IDE,以后的趋势android开发肯定会用AS,至于eclipse的adt插件是否继续更新就不可而知了。最近我也在android官网找了一...
阅读全文
摘要:摘要今天和大家分享一下如何定制一个可以循环滑动的viewpager。其实今天更重要的提供一种组件化思想,当然你可以理解为面向对象思想。吐槽一下网上流行的实现方式吧(为了方便说明,下文称之为方式A),方式A是重写adapter的getCount方法,返回一个很大的数(值为max),adapter中的g...
阅读全文
摘要:Android不规则点击区域详解摘要今天要和大家分享的是Android不规则点击区域,准确说是在视觉上不规则的图像点击响应区域分发。其实这个问题比较简单,对于很多人来说根本不值得做为一篇博文写出来,但在我的群里确实有童鞋不了解如何实现并且很想知道完整的流程是什么样的,故完成demo作为参考。以下篇幅...
阅读全文
摘要:摘要垃圾回收和内存分配相关,先了解运行时数据区域的划分及各个区域的作用。垃圾回收主要需要考虑的3个问题:1、什么时候回收;2、哪些对象需要回收;3、如何回收。运行时数据区域程序计数器(Program Conuter Register) 程序计数器是一块较小的内存空间,它是当前线程执行字节码的行号指示...
阅读全文
摘要:前言最近一年来对项目管理小有体会,把自己总结的经验和大家分享。下面是对项目管理进行总结。1、项目难度评估。技术预研是关键。项目难度评估很大程度上都和个人开发经验有关,经验越丰富那么评估也就越准确。很多时候在开发中可能遇到一些技术难点,这个是项目评估的关键,所以有必须做一些难点预研,需要较全面的对整个项目进行了解。2、项目时间评估。评估时间要充足是关键。在开发周期方面需要比较准确地预算,毕竟一个项目都有一定的开发周期,时间长了客户肯定不同意,时间短了开发人员压力大。作为一个项目负责人应该保证周期内可以完成任务,所以时间评估应该多给一点时间,以防意外,因为很多时候大把的时间会浪费在某个问题上。3、
阅读全文
摘要:前言本文针对自定义组件进行一些分析。还是那句老话“授之于鱼不如授之以渔”。今天要讲的是一个自定义的可以分页的ListView。网上都讲了些ListView分页的方法,那么为什么我在这里还需要自己写一个呢?①分页功能是很多时候都需要的;②网上的很多代码和数据绑定在一起的,要使用的话还需要改些东西,更重要的是代码很啰嗦、很糟糕(当然只是个人风格问题,至少我是这么认为);③或者是功能太强大而我们仅仅是需要分页功能,但是又不好分离出来。所以写个分页的listview就很有必要了,尤其是可以直接使用的listview。效果图说得再多都是苍白无力的理论,先给个效果图看看吧。分析这个组件看上去简单,不过需要
阅读全文
摘要:Android测试之Monkey写在前面的话Android官方对Monkey进行了简单介绍,网上也有不错的翻译。这部分就直接引用官网的原文和网友的翻译。个人理解不同所以觉得有必要把官网原文贴出来。你也可以直接参见https://developer.android.com/tools/help/monkey.html。本文适合android测试人员阅读,欢迎交流讨论。Monkey是什么Monkey是可以运行在模拟器里或实际设备中的程序。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。TheMonkeyisaprogramthatruns
阅读全文
摘要:概述:之前做的网络相关的应用,里面涉及到了xml的解析,由于急于完成任务也没有设计就直接敲代码。这几天给一个朋友做项目的时候也涉及到了xml的解析,而且解析的内容比较多,我查看了以前的项目中的相关代码,顿时觉得很多代码都是可以优化的。在此写两个通用的xml解析方法,当然这里所讲的通用只是在一定程度上并且需要遵守一些规范。1、为什么需要写一个通用xml解析方法。当需要解析不同的xml节点。你有可能是在xml解析的时候匹配不同节点并且节点名都是写死的,这样的话你解析不同的节点就需要不同的解析方法。当然这种方式是最简单也是最笨的方法。为了减少代码把代码写得更有质量那么你就需要考虑设计一个通用的xml
阅读全文
摘要:概述:最近在做项目的过程中遇到美工在设计和切图方面的问题。在此和大家分享一下个人对UI、UE方面的一些浅薄的认识。个人观点,仅供参考,欢迎参与讨论。美术设计应该考虑到UE,即用户体验。按钮的设计1、你可以真正点击的区域应该尽量大些,至少不应该小于一个手指的宽度,那样的话点击的命中率要高,否则会有“点击不灵敏”的感觉,当然并不是真正的不灵敏,而是没有点中操作的区域。(用户可不管这些理由,多为用户考虑哦)。2、对于RadioButton、CheckBox至少应该出3个状态的图:正常、点击、选中。有时不能为了方便就只出两个图:正常、选中。这种情况在点击的过程中也有“响应迟钝”的感觉,因为毕竟在点击状
阅读全文
摘要:前言 Android自带的组件比较丑陋(个人感觉),自己写组件比较复杂,而且必须熟悉android应用层开发的一些机制,如绘制、回调,所以非迫不得已的情况下还是不要自己写组件,因为怕考虑不周全导致譬如性能或异常方面的问题,你自己写也会耗费不少时间。个人觉得采用第三方UI是个不错的选择,尤其是你需要比较复杂的UI组件,而且又比较赶项目的时候。优缺点当然第三方UI组件不全是优秀的,个人总结如下:(当然远远不止这些,欢迎讨论)优点:扩展性好,比较通用(当然也有写得比较烂的,这里不讨论),易用、开发速度快。缺点:大多数并没有google官方的组件那么稳定,甚至有些小问题。一旦有问题调试起来非常麻烦。性
阅读全文
摘要:前言上一篇博文已经是3个月以前的了,最近比较忙没有时间整理技术文档。在空闲的时间把《Java解惑》这本书读了一遍,感觉里面的挺有意思的,推荐一下。其实里面也没有什么高难度的东西,都是比较基础而又常常被忽略的知识点。在项目中可能用到的时候不多,但是对于分析问题却有很大的帮助。突然觉得自己的java基础很弱。下面收集了一些问题,希望和大家交流。1、《Java解惑》中的一个问题。这类问题基本上都是数值精度方面的。书中有这样一个例子:public class Main2 {public static void main(String[] args) {System.out.println(2.00-1
阅读全文
摘要:前言android中有很多现成的组件可以使用,但是android上面的程序很多时候用系统自带的组件都不太合适,主要是样式可能不是我们想要的。这个时候我们就需要定制一些样式。本文将讲解如何修改组件的样式。1、默认样式。在修改组件的样式之前,我们还是先了解一下组件默认的样式,如下:当然还有很多的组件,这里就简单的列举一下就可以了。从上面的默认组件可以看出这些组件的样式和你的app的风格不一致。那么这个时候你可能需要做的就是更改组件的样式。(本人觉得默认样式基本上都比较丑,基本上每个app中都需要定制样式)。2、默认样式文件。先看看这些组件的样式到底是放在哪里的。\android-sdk-windo
阅读全文
摘要:前言这一部分继续Android数据库ORMlite框架翻译系列(第二章:part 2)部分。这一次的翻译距离part2部分还是有一下段时间,文章很多东西英文可以理解但是非要用中文来表达还是挺不容易的。首先还是建议参考英文文档,本文仅作参考。如果有翻译的不妥之处请读者提出,谢谢。另外,本系列的文章好像并不被大家看好,所以这篇文章也将是本系列的最后一篇。如果以后有必要的话再坚持把剩下的部分翻译完。-------------------------------------------------------------------------------------2.10索引成员在你的数据类中OR
阅读全文
摘要:前言这一部分继续Android数据库ORMlite框架翻译系列(第二章:part 1)部分。这章的内容的确不少,所以这次仍然没有翻译完。需要快速上手的话你最好看看原文档。-------------------------------------------------------------------------------------2.7表和Schema创建有几个ORMLite提供的工具,可以帮助你为存入数据库的类创建表和schema。2.7.1TableUtils类TableUtils类提供了一些静态方法用以辅助创建和删除表,同样也提供了schema申明。(下面例举出静态方法名,详细说
阅读全文
摘要:前言由于第二章是整个文档的核心,内容也很多,所以分次翻译。下一章的内容会继续本章接着翻译。-------------------------------------------------------------------------------------2如何使用这一章进入到更多详细地使用ORMLite的各种功能。2.1配置你的Class为了配置你的class使其持久化,你需要做下面几步:①添加@DatabaseTable注解到你每个需要持久化的类的顶部。你也可以用@Entity。②添加@DatabaseField注解到你需要持久化的字段的上面。你也可以使用@Column和其他的。③为每
阅读全文
摘要:前言 个人感觉android上sqlite已经比较好用,但是如果需要在android上像J2EE那样开发的话那么sqlite还是显得比较复杂,这个时候你当然可以选择一些android平台上的ORM框架。ORM框架是做什么的,android平台上有哪些好用的ORM框架,这些问题你通通可以google得到你满意的结果,在此不做解释。本系列主要是翻译ORMlite文档。 为什么翻译ORMlite?简单点说就是因为个人觉得ORMlite是android平台上不错的ORM框架,官方也提供了很多相关介绍。但是几乎没有看到有中文文档。为了更多人可以学习到这个框架所以决定把官方的文档翻译成中文。个人英语水..
阅读全文
摘要:前言: 这几天本来打算对achartengine进行一些比较全面的讲解,不过考虑到它并不复杂,而且非常方便应用,加之官网提供了很好的demo不需要我们自己慢慢摸索。所以这将是aChartEngine库介绍的最后一篇文章了。在cnblogs上的阅读量上来看这方面的文章园友们并不是特别需要(毕竟简单嘛),但是为了保证aChartEngine介绍的完整性,还是坚持写完这最后一篇相关的介绍。如果有需要了解更多的朋友那么请自己参考官方教程。下面正式进入主题:1、line chart 介绍。aChartEngine中的lineChart是线图,是数据显示的一种。效果如图:上面的效果图并没有对线条进行平滑.
阅读全文
摘要:1、stacked chart介绍aChartEngine中的stacked Chart是柱状图,是数据显示的一种。效果如图:两个图都是stacked chart,只是设置了不同的样式(样式已经提供好的)。2、如何使用stackedchart。stacked chart 的使用和pie chart的使用基本一样。如果不清楚的话请参见pie chart一文:http://www.cnblogs.com/vanezkw/archive/2012/07/27/2611677.html。3、demo。package com.example.test;import java.util.ArrayList
阅读全文