Android上的一个神器『AIDE』

能直接在手机上git clone啊有木有!!

clone完了什么都不用改直接就能编译出apk了有木有!!

圣诞节出去旅游用手机就能修修bug 发布apk了有木有!!!

mba的轻便性跟手机比起来弱爆了有木有!!!

———————正常向的分割线——————–

圣诞节某个软件要发布beta版本但是又要出去旅游怎么办呢,正在纠结带不带mba的时候突然想起来手机上就有一个IDE,下了试了试超级好用而且升级key圣诞节还打折就果断入手了!

此刻真是感动的痛哭流涕啊。。

AndroidCharts 开发笔记

最近在为 www.pomotodo.com 做 Android版的时候其中有三个设计的非常精致的统计视图,费了很大到劲把这三个图做出来之后想了想还是开源分享出来吧,其中 LineView 还是有些繁杂的,故写了本笔记。

虽然 Android 上已经有一个很棒到开源统计图了,但还是自己手写遍更有趣些不是嘛-,– 于是没怎么看那个就动手自己写了个这个。

Github: https://github.com/dacer/AndroidCharts

LineView:

目标:

  • 大部分的可见元素都能任意随时修改

  • 可以修改一格所代表的数据大小(默认为1)

  • view 的高度和方格到宽度为固定值,这样便于之后的动画效果和保证在不同大小的设备上的一致性

  • 在不同设备上完全的自适应

实现方式:

最重要的为这三个 ArrayList:

  • ArrayList xCoordinateList : 背景中点的所有X坐标

  • ArrayList yCoordinateList : 背景中点到所有Y坐标

  • ArrayList drawPointList;      : 数据所表示的点的坐标

在每次更新数据后刷新这三个 List,然后根据这三个 List 可以很轻易的画出所有的元素。

但是点击后出现到 popup 会造成两个问题,

  1. 怎么样画一个这个出来,而且中间的字还要在正中央:这个的话已经写了个解法在之前的博文中,

  2. 顶部的空间可能会不够显示最上方的点显示出的 popup:我先是在当前列表中的最大值的上方再加上一个格子,但这样有时还是不够,于是。。待续

终于升到4.3了

2013-11-13-12.09.08

我到韩版S3终于也能用上4.3了T_T, 虽然kitkat都出来了。。

顺便分享一下Mac下更新三星手机固件的心得:

我先在三星官网下载Mac版Kies之后连接手机不上,觉得可能是刷了自制固件到缘故,于是按住音量下键开机进入线刷模式,在Kies上输入手机型号和SN码之后顺利刷机,不过原来手机SD卡的东西都清空了。。还好应用都在,就先不root了用着吧=.=

怎样在canvas中的方形中央画Text

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/**
*
* @param canvas The canvas you need to draw on.
* @param x The X Coordinate from left to right.
* @param y The Y Coordinate form bottom to top.
*/
private void drawPopup(Canvas canvas,String num,int x,int y){
int bottomTriangleHeight = 12;
int padding = MyUtils.dip2px(mContext,2);
int marginBottom = MyUtils.dip2px(mContext,5);
boolean singularNum = (num.length() == 1);
int sidePadding = MyUtils.dip2px(mContext,singularNum? 8:5);
int xCoor = xCoordinateList.get(x);
int yCoor = yCoordinateList.get(yCoordinateList.size()-y)-MyUtils.dip2px(mContext,5);

Paint textPaint = new Paint();
textPaint.setAntiAlias(true);
textPaint.setColor(Color.BLACK);
textPaint.setTextSize(MyUtils.sp2px(mContext, 13));
textPaint.setStrokeWidth(5);
textPaint.setTextAlign(Paint.Align.CENTER);
Paint.FontMetrics fm = new Paint.FontMetrics();
textPaint.getFontMetrics(fm);

Rect r = new Rect((int)(xCoor-textPaint.measureText(num)/2)-sidePadding,
(int)(yCoor - textPaint.getTextSize())-bottomTriangleHeight-padding-marginBottom,
(int)(xCoor + textPaint.measureText(num)/2)+sidePadding,
yCoor+padding-marginBottom);

NinePatchDrawable popup = (NinePatchDrawable)getResources().
getDrawable(R.drawable.popup_red);
popup.setBounds(r);
popup.draw(canvas);

textPaint.setColor(Color.WHITE);
canvas.drawText(num, xCoor, yCoor-bottomTriangleHeight-marginBottom, textPaint);
}

被这个折腾死了。。

有时会觉得这几个月的努力真的很值得

看到这些评价的时候。

Screenshot_2013-11-01-23-57-42 ps:第一个的那个说到我心坎里了啊!我之前一直想表述出这个但是就是组织语言不出来。。

实在是受不了eclipse了

以前用Y450的时候就很卡很崩溃时不时就来点Bug错误什么的我也就忍了

现在换mba了还是时不时出现点问题,现在连导出apk都会崩溃了(╯‵□′)╯︵┻━┻

导出到Android studio也很有问题

如果有一天我放弃了Simple Pomodoro的维护一定是eclipse的错!

设计一个两栏切皆可滑动的日期选择器

发现不记录一下开发的过程的话一出现问题很难理清楚啊(╯‵□′)╯︵┻━┻

大概就是这样一个东西:

Screenshot-2013-11-01-10.41.24

要实现的功能有:

  • 月份选择器可滑动可点击,且月份切换时周视图也随之改变为当月的1号。

  • 周选择器可滑动可点击,点击后通过interface将所选择的日期传递出去。

  • 周选择器在滑动至其他月份时使月选择器自动调整为当前月份。

  • 月份选择器可独立出来

实现的方法:

  • 两个视图都使用viewpager+fragment来实现滑动,且在月份选择器viewpager的两侧加两个button

  • 月份选择器总数为100*12+当前的月份,这儿有一个坑就是用Calendar中的month时,它的范围是0-11的,必须要多+1,在初始化视图的时候自动设置为今天(即最后一个)

  • 月份选择器在滑动后调用周的setCurrentWeek方法,再由其内部调用setCurrentItem方法。

这要解决一个问题:

月份在变化之后带动了周的变化,但是周的变化有可能会再次带动月份的变化,就造成了逻辑的混乱。

想到的解决办法就是只有在滑动周选择器时才会改变月份,滑动月选择器时改变的周视图不会再次去改变月份。

但是滑动周视图后改变了月视图之后月视图也会改变周视图。。所以balablabala要反过来再改一次

虽然挺蛋疼了但总归是解决了这个问题,还有若干个小问题就不提了

用canvas画填充后的三角形

花了半天时间研究这个啊!!

http://stackoverflow.com/questions/3501126/how-to-draw-a-filled-triangle-in-android-canvas

这个问题中不断的moveTo,lineTo后的path用setStyle(Paint.Style.FILL)的paint是画不了一个被填充的三角的,会直接无法显示,又找了大半天的解决方法才发现这个问题的第二个就是解决方法。。

那就是moveTo之后就一直lineTo就可以了。。。。。

李先生,非常的感谢您

Screenshot-2013-10-21-12.48.32

这是我做这个软件以来收到的第一笔Donation。

其实我之前是完全不相信,有人在用着免费软件的时候能想着给作者一些支持,特别是我这个并不优异的软件。

今天开始永久删去极简番茄的广告条。

我果然还是个风险厌恶型的人

经济的专业读了这么久能留在我脑子里的经济学的名词还真没几个,风险厌恶型算是一个。

依我的非常浅薄的理解来解释一下它:就是在经济活动中会非常倾向于做出风险较小的那一面行为的类型。

最近找到了个remote的工作是支付的bitcoin为每周的工资,每个周日我拿到工资后在当天就会将其卖出,即使bitcoin在不断的上涨,下图为卖出的历史纪录,最上方的为今天的情况,即比上周上涨了约200元。

Screenshot-2013-10-20-23.59.34

看到这个记录有人可能会想,如果把第一周的bitcoin攒到现在来卖的话,不就凭空多出了近600多元吗?

但我是个风险厌恶型

好吧以上都是废话。

顺便一说最近blog怎么都不怎么更新了呢?

原因不是我变懒了也不是这个bolg的实际访问量寥寥无几(这倒是事实)

觉得把工作中的东西拿出来分享略有些不妥,好吧其实是在忙这个工作就变懒了(╯‵□′)╯︵┻━┻

以后有时间的话把一个很有意思的actionbar进度条拿出来开源成library也不错的感觉

好吧这一整篇都是废话