编程经验分享

笑看嫣红染半山,
逐风万里白云间,
逍遥此身不为客,
天地三才任平凡。

0%

ListView的ScrollBar设置为null的时候,输入法弹出会把整体界面上推,应该是Android的bug。

理论上,只要有可滚动的View在EditText上方,输入法默认弹出的时候会把Scrollable的View上推而不是整体界面上推。

但是如果把ScrollBar设置为null,就变成了整体上推。

要将一个VideoView动态添加到一个View上,但是出现了问题,第一次添加VideoView的时候,总是会全屏闪一下黑屏。搜了所有地方,都没有合适的解答。查看了一下VideoView的源代码,发现这个类从SurfaceView继承而来。为了排除和Video播放有关,我将一个最简单的SurfaceView动态添加到一个View上。发现还是会闪一下黑屏,这下就排除了和video的关系。

阅读全文 »

应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。

大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。

如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办呢?

阅读全文 »

xml文件中:

1
android:transcriptMode="alwaysScroll"

代码:

1
ListView.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);

进入后,手动跳转到最后一行:

1
ListView.setSelection(adapter.getCount()-1);

前面几篇文章我们实现了生成不规则图形,以及实现消息气泡效果。在最后这片文章中,我们将要实现心型图片。

我知道软件工程师是非常浪漫的一群人,所以我想在情人节的时候发表这篇博客,但是最终决定现在发布,这样腾出来几天时间可以给你们增加一些更有趣的东西。

我们只需要很简单的几步画一个心形的图片。为了画心形的图片,我参考了Heart Curve。 Heart Curve提过了好几种画心形的方法。我最终选择符合我们要求的Heart Curve上提供的第四种方法。

阅读全文 »

在之前不规则图形切图系列中,我们采用了两种方法来实现图片的圆角。在这篇文章中我们将会创建像WhatsApp中消息气泡一样的效果。

为了实现这个效果,我们需要使用上文中提到的基于BitmapShader的技术。圆角矩阵跟之前实现方法一样,但是需要在图片左侧留出一定的距离。在本文的代码中将画一个三角形来代替WhatsApp的消息气泡的“句柄”,这根就像漫画中指向人嘴的消息。

我们知道如何画圆角矩形,这就实现了我们效果的一半了。所以,我们需要做的就是画一个三角形。问题来了,在Canvas中没有画三角形的方法,所以我们需要用一些原始的方法来画三角形。Canvas支持moveTo()和lineTo()方法,通过这两个方法我们可以实现由直线组成的简单形状。但是我们有不能填充三角形内部,所以我们又需要使用Path对象。Path也包含moveTo()和lineTo()方法。Path不仅能够画简单的图形,而且还能够用BitmapShader来渲染图形内部。

阅读全文 »

上篇文章我们实现了用透明图片的方式来实现圆角切图。但是采用透明浮层的方法有很多问题不完全符合我们的要求。在这篇文章中我们采用一种不使用额外的图片的替代方案来实现相同的圆角图片的效果。

在本文开始之前,我首先声明写着一些列的技术文章是我完全免费为大家提供的。我第一次学习用BitmapShader创建圆角图片是从Romain的一篇博客文章。我们将会创建一些更酷的效果,下面先罗列一些用到的技术及说明:

阅读全文 »

转自:http://ihongqiqu.com/blog/2014/07/22/test-github2/

不久之前,我被问到如何创建一个像WhatsApp中气泡消息一样的,图像边缘是不规则图形的图片。更多的关于不规则图形方面的知识将在接下来的一系列的《Android切图之不规则形状》中学习到。

在继续下一步之前,我必须承认我忘记是谁问的我关于切图的问题了。如果这个人是正在看此文的你,请联系我,我非常感谢你在一定程度上激励了我写这一系列的文章。

我们用一个很简单的不规则图形开始:我一个圆角矩形。值得注意的是,圆角矩形可以通过Android SDK的API20中的RoundRectShapeDrawable来实现,但是这个不能够实现我们将来需要实现的更为复杂的效果(这些之后的文章中会出现),所以我们将继续使用常规的方法。

阅读全文 »

Terminal 终端命令行

1. 重新定义单个图片尺寸长和宽(忽略比例):

sips -z 768 1024 xxx.png

768代表高度,1024代表长度,imge,png是你想要批量修改的图片名称

  1. 重新定义单个图片尺寸(保留比例)

sips -Z 500 xxx.png

细心看,可以发现小写的“z”,变成了大写,要想保留图片原始比例就得这样做,比如你有一张宽度为900的图片,想规定长和宽最低像素值为500并保留比例,那么就可以执行以上命令。

3. 在一个目录里批量修改同一后缀格式的图片

sips -Z(-z) 300 *.png

只需将后缀前的名字变为“*”即可。