Android

Gradle Cheat Sheet (1): Groovy Fundamentals

  本系列整理自Udacity上Gradle for Android and Java课程(国内需访问中文版用Gradle构建Android和Java),旨在提供一份快速参考手册,以便查用。 0. Gradle与Groovy   Gradle编译脚本是基于Groovy编写的。Groovy是一个运行于JVM的脚本语言,支持DSL(Domain Specific Languages),具有很高的可读性…
Read more

处理View滑动冲突的一种方法

  当界面中内外两层View都可以滑动时,就会产生滑动冲突。比如一个列表型的ViewGroup里面盛放了若干个View,ViewGroup可以垂直滚动,而里面的View又支持水平滑动的手势,当用户在ViewGroup和View的重叠区域滑动手指时,就会产生滑动冲突——无法判断当前滑动操作应当由ViewGroup还是View来进行处理。本文通过一个简单的例子,说明滑动冲突的一种处理方法。 1. 构造…
Read more

通过直接继承View来实现自定义View的方法简介

  在设计自定义View时,可以选择直接继承View、直接继承ViewGroup、继承特定View、继承特定ViewGroup等方式。本文通过实现一个在屏幕上绘制矩形的自定义View,介绍通过继承View来实现自定义View的方法。 1. 创建继承View的自定义View   首先创建BlockView直接继承自View: public class BlockView extends View {…
Read more

在Toolbar中放置Spinner

  在展示列表时,可以通过在Toolbar中放置Spinner的形式,提供对列表进行过滤和分类的功能。本文在RecyclerView使用方法举例(2)的基础上,为Toolbar添加一个用于选择电影排序方法的Spinner,如图1所示。 0. 关于排序字符串的处理   之前在MovieService.java中定义了三种排序方式:按照流行度降序、按照投票平均分降序、按照投票量降序,如下所示: Str…
Read more

自定义SearchView的搜索提示

  SearchView除了提供输入和提交搜索的界面,还能够根据输入显示对应的搜索提示。本文以搜索历史记录为例,介绍自定义Android搜索提示的方法,如图1所示。 1. SearchRecentSuggestionsProvider   首先要创建自己的SearchRecentSuggestionsProvider,用于保存和查询搜索记录。 1.1 创建SearchRecentSuggestio…
Read more

在Android Studio中添加本地库文件

1. 新建Module   选择File / New / New Module…,如图1。   在打开的窗口中,选择Import .JAR/.AAR Package,如图2。   选择本地库文件,点击Finish,如图3。 2. 添加Module   在工程上点击右键,选择Open Module Settings,如图4   在左边Modules下选择要把库添加到的目标Module,这…
Read more

Collection Widget实现举例

  App Widget可以使用RemoteViewsService来展示集合数据,下面在Android App Widget实现举例的基础上,创建一个电影海报列表的Widget,效果如图1所示。 1. 创建布局   App Widget可用的Collection View有一下几种: ListView GridView StackView AdapterViewFlipper   这里使用Sta…
Read more