分类目录归档:Android

[Android学习笔记]改变输入法软键盘上回车键的显示

平日中使用Android应用,例如微信发送消息,输入法的enter键会显示发送二字;在微博中使用搜索功能时,输入法的enter键会显示搜索二字。

编写自己的Android应用时,如果能针对当前的任务,提示输入法显示接近的动作的问题,对用户体验是有所帮助的。

好在在Android上让enter键显示搜索等固定的几种文字并不困难,可以在layout的xml中通过设定EditTextimeOptions属性来实现:

这里需要注意的是,inputType参数也需要设置,否则输入法一样是无法触发enter文字的改变的。

测试的xml文件如下:

搜狗输入法的效果示意图如下:

imeOptions-sample-sogou

至于响应enter输入事件,则需要通过完成对应Listener才能继续了。

Build Facebook fresco

Facebook最近开源了他们的Android图片加载库 fresco ,3月26号到现在两天多时间在github上收获了1000+ star,足见大家对这一个库的肯定。

自己自然也想尝试这一个库,首要工作就是build。

在OS X中进行build

这个库build过程中查看了build.gradle发现需要 ndk 支持,那么首要工作自然是安装ndk。

在OS X 10.9上的build过程比较简单,需要注意的是要把sdk以及ndk的位置加入PATH环境变量中,之后按照github上的README.md中的命令build即可,即:

build过程中可能出现的问题是中间有一步可能还需要挂代理(用到了chromium/webm/libwebp ,gradle会执行一个clone操作),国内网络环境中可能会有连接不上的情况。

Docker中进行build

搭建环境的繁琐之处程序员们自然体会了无数次,还好出现Docker,拯救了程序员。

这里为了方便大家,我简单的构建了一个 Docker image 用于方便大家build,基于dockerbase/android 添加了support library。

使用过程很简单,自然是要先clone fresco

为了在此镜像中build fresco ,需要编辑根目录下的 build.gradle ,从:

变成:

之后继续使用命令 ./gradlew build完成build工作, enjoy~

Android Studio中使用Volley

Android上的通信框架各种各样,比如 android-async-http,而最近同学们很多都推荐给我用Google家的 Volley

生成volley aar

官网上的指导手册说明了安装的步骤,首先自然是要下载源码:

然而在某些网络环境下,会出现SSL验证问题,这时候就需要暂时关闭git的SSL验证:

重新clone完成之后即可。

简单看看clone出的目录结构:

可以看到这里提供了通过gradle构建的方式,由于已经安装的Android Studio,那么在

这样的目录下可以找到gradle的可执行文件,不同版本的gradle可能不相同,但是位置应该是类似的。

找到gradle之后自然是进行build工作,不过在build之前,需要注意的是需要临时设定一下ANDROID_HOME环境变量,指向SDK目录:

同时还需要注意的是检查build.gradle文件中的buildToolsVersion为已安装的版本,即在SDK Manager中的Tools > Android SDK Build-tools中已安装的版本,目前配置文件中默认版本是21.1.0,可能与已安装的版本不同,如:

之后进行build工作:

如果build成功,会在当前目录下的build/outputs/aar目录下找到debug和release的aar包。

Android Studio引用Volley

在Android Studio中引用Volley的aar包在当前的1.1.0版本中是可以按照如下方式进行的,即修改项目的build.gradle文件,添加对aar包的引用:

在此之前,应该已经将volley-release.aar复制到项目的libs目录中并改名为volley.aar了。

完成之后就是愉快的coding了。