![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【<转载>Android精彩案例】
文章平均质量分 88
Carry_小超
上帝赋予人类说话的能力,而言语又创造了思想,思想是人类对宇宙的量度
展开
-
Android ListView功能扩展,实现高性能的瀑布流布局
经过前面两篇文章的学习,我们已经对ListView进行了非常深层次的剖析,不仅了解了ListView的源码和它的工作原理,同时也将ListView中常见的一些问题进行了归纳和总结。那么本篇文章是我们ListView系列三部曲的最后一篇,在这篇文章当中我们将对ListView进行功能扩展,让它能够以瀑布流的样式来显示数据。另外,本篇文章的内容比较复杂,且知识点严重依赖于前两篇文章,如果你还没转载 2015-10-30 16:48:01 · 748 阅读 · 0 评论 -
Android Fragment完全解析,关于碎片你所需知道的一切(一)
我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后转载 2015-03-17 15:07:53 · 506 阅读 · 0 评论 -
Android最佳性能实践(二)——分析内存的使用情况
由于Android是为移动设备开发的操作系统,我们在开发应用程序的时候应当始终把内存问题充分考虑在内。虽然Android系统拥有垃圾自动回收机制,但这并不意味着我们就可以完全忽略何时去分配或释放内存。即使我们全部按照上一篇文章中给出的编程建议来去编写程序,还是会很有可能出现内存泄露或其它类型的内存问题。所以,唯一能够解决问题的办法,就是尝试去分析应用程序的内存使用情况,那么本篇文章就会教大家如何进转载 2015-03-23 10:48:12 · 481 阅读 · 0 评论 -
Android最佳性能实践(四)——布局优化技巧
在前面几篇文章当中,我们学习了如何通过合理管理内存,以及高性能编码技巧的方式来提升应用程序的性能。然而实际上界面布局也会对应用程序的性能产生比较大的影响,如果布局写得糟糕的话,那么程序加载UI的速度就会非常慢,从而造成不好的用户体验。那么本篇文章我们就来学习一下,如何通过优化布局来提供应用程序的性能。还没有看过前面前面一篇文章的朋友建议可以先去阅读 Android最佳性能实践(三)——高性能编码优转载 2015-03-23 10:51:00 · 596 阅读 · 0 评论 -
Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
本篇文章主要是带大家从源码的角度上面去解读这个强大的图片加载框架,自己很久没有写文章了,感觉生疏了许多,距离上一篇文章三个月多了,确实是自己平常忙,换了工作很多东西都要去看去理解,然后加上自己也懒了,没有以前那么有激情了,我感觉这节奏不对,我要继续保持以前的激情,正所谓好记性不如烂笔头,有时候自己也会去翻看下之前写的东西,我觉得知识写下来比在脑海中留存的更久,今天就给大家来读一读这个框架的源码,我转载 2015-03-30 17:16:56 · 400 阅读 · 0 评论 -
Android 开源框架Universal-Image-Loader完全解析(二)--- 图片缓存策略详解
本篇文章继续为大家介绍Universal-Image-Loader这个开源的图片加载框架,介绍的是图片缓存策略方面的,如果大家对这个开源框架的使用还不了解,大家可以看看我之前写的一篇文章Android 开源框架Universal-Image-Loader完全解析(一)--- 基本介绍及使用,我们一般去加载大量的图片的时候,都会做缓存策略,缓存又分为内存缓存和硬盘缓存,我之前也写了几篇异步加载大转载 2015-03-30 17:15:53 · 518 阅读 · 0 评论 -
Android数据库高手秘籍(一)——SQLite命令
要想熟练地操作任何一个数据库,最最基本的要求就是要懂SQL语言,这也是每个程序员都应该掌握的技能。虽说SQL博大精深,要想精通确实很难,但最基本的一些建表命令,增删改查,大家还是必须要学会的。SQL(Structured Query Language)是一种标准的数据库查询语言,即所有的关系型数据库都会支持它,只不过每种数据库对SQL语言的支持与标准存在着细微的不同。我们无须关心其它数据库转载 2015-03-23 09:20:44 · 418 阅读 · 0 评论 -
Android数据库高手秘籍(二)——创建表和LitePal的基本用法
上一篇文章中我们学习了一些Android数据库相关的基础知识,和几个颇为有用的SQLite命令,都是直接在命令行操作的。但是我们都知道,数据库是要和程序结合在一起使用的,单独对一个数据库去进行増删改查操作并没有什么意义,因此今天我们就来学习一下如何在Android程序当中去操作SQLite数据库,还没看过前一篇文章的朋友可以先去参考 Android数据库高手秘籍(一)——SQLite命令 。转载 2015-03-23 09:22:51 · 584 阅读 · 0 评论 -
Android数据库高手秘籍(三)——使用LitePal升级表
在上一篇文章中,我们学习了LitePal的基本用法,体验了使用框架来进行创建表操作的便利。然而大家都知道,创建表只是数据库操作中最基本的一步而已,我们在一开始创建的表结构,随着需求的变更,到了后期是极有可能需要修改的。因此,升级表的操作对于任何一个项目也是至关重要的,那么今天我们就一起来学习一下,在Android传统开发当中升级表的方式,以及使用LitePal来进行升级表操作的用法。如果你还没有看转载 2015-03-23 09:24:09 · 475 阅读 · 0 评论 -
Android数据库高手秘籍(四)——使用LitePal建立表关联
目前我们已经对LitePal的用法有了一定了解,学会了使用LitePal来创建表和升级表的方式,那么今天就让我们一起继续进阶,探究一下如何使用LitePal来建立表与表之间的关联关系。还没有看过前一篇文章的朋友建议先去参考 Android数据库高手秘籍(三)——使用LitePal升级表 。LitePal的项目地址是:https://github.com/LitePalFramework/L转载 2015-03-23 09:25:11 · 548 阅读 · 0 评论 -
Android数据库高手秘籍(五)——LitePal的存储操作
经过前面几篇文章的学习,我们已经把LitePal的表管理模块的功能都很好地掌握了,相信大家都已经体会到了使用LitePal来创建表、升级表、以及建立表关联所带来的便利。那么从本篇文章开始,我们将进入到一个新模块的学习旅程当中,使用LitePal来进行表的CRUD操作。还没有看过前一篇文章的朋友建议先去参考 Android数据库高手秘籍(四)——使用LitePal建立表关联 。LitePal转载 2015-03-23 09:26:47 · 571 阅读 · 0 评论 -
Android数据库高手秘籍(七)——体验LitePal的查询艺术
经过了多篇文章的学习,我们已经把LitePal中的绝大部分内容都掌握了。现在回想起来了,增删改查四种操作中的前三种我们都已经学完了,不知道现在使用起数据库来,你有没有感觉到格外的轻松和简单。但是呢,我们都知道,在所有的数据库操作当中,查询操作肯定是最复杂的,用法也是最多的,因此LitePal在查询方面提供的API也是比较丰富,而且LitePal在查询方面的API设计也是颇为艺术的。那么今天我们就专转载 2015-03-23 09:29:47 · 467 阅读 · 0 评论 -
Android手机平板两不误,使用Fragment实现兼容手机和平板的程序(二)
记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。当时项目组定的方案是,制作两个版本的App,一个手机版,一个Pad版。由于当时手机版的主体功能已经做的差不多了,所以Pad版基本上就是把手机版的代码完全拷过来,然后再根据平板的特性部分稍转载 2015-03-17 15:11:57 · 515 阅读 · 0 评论 -
Android数据库高手秘籍(六)——LitePal的修改和删除操作
在上一篇文章中,我们学会了使用LitePal进行存储数据的功能。确实,比起直接使用Android原生的API,LitePal明显简单方便了太多。那么,在增删改查四种操作中,我们已经把“增”学完了,今天就让我们继续趁热打铁,学习一下如何使用LitePal进行修改和删除操作。还没有看过前一篇文章的朋友建议先去参考 Android数据库高手秘籍(五)——LitePal的存储操作 。LitePal转载 2015-03-23 09:29:00 · 503 阅读 · 0 评论 -
BaseAnimation是基于开源的APP,致力于收集各种动画效果(最新版本1.3)
声明:部分动画来源于网络,本人只是想方便收集在一起,如果不妥请及时与我联系!谢谢为了统一BaseAnimationApp签名,一定要方便以后大家自动更新...防止签名冲突,不能及时更新BaseAnimation讨论群号:149581646github下载地址:https://github.com/z56402344/BaseAnimati转载 2015-04-03 10:29:45 · 558 阅读 · 0 评论 -
Android ListView异步加载图片乱序问题,原因分析及解决方案
在Android所有系统自带的控件当中,ListView这个控件算是用法比较复杂的了,关键是用法复杂也就算了,它还经常会出现一些稀奇古怪的问题,让人非常头疼。比如说在ListView中加载图片,如果是同步加载图片倒还好,但是一旦使用异步加载图片那么问题就来了,这个问题我相信很多Android开发者都曾经遇到过,就是异步加载图片会出现错位乱序的情况。遇到这个问题时,不少人在网上搜索找到了相应的解决方转载 2015-10-30 16:46:24 · 976 阅读 · 0 评论 -
Android 高清加载巨图方案 拒绝压缩图片
一、概述距离上一篇博客有段时间没更新了,主要是最近有些私事导致的,那么就先来一篇简单一点的博客脉动回来。对于加载图片,大家都不陌生,一般为了尽可能避免OOM都会按照如下做法:对于图片显示:根据需要显示图片控件的大小对图片进行压缩显示。如果图片数量非常多:则会使用LruCache等缓存机制,将所有图片占据的内容维持在一个范围内。其实对于图片加载还有种情况,就是单个图片非常巨大,并转载 2015-10-30 16:42:05 · 591 阅读 · 0 评论 -
Android TagFlowLayout完全解析 一款针对Tag的布局
一、概述本文之前,先提一下关于上篇博文的100多万访问量请无视,博文被刷,我也很郁闷,本来想把那个文章放到草稿箱,结果放不进去,还把日期弄更新了,实属无奈。ok,开始今天的博文,今天要说的是TagFlowLayout,说这个之前必须提一下FlowLayout,如果你不了解,可以先阅读之前的博文:Android 自定义ViewGroup 实战篇 -> 实现FlowLayout或者观看视频转载 2015-10-30 16:29:43 · 678 阅读 · 0 评论 -
Android 沉浸式状态栏攻略 让你的状态栏变色吧
一、概述近期注意到QQ新版使用了沉浸式状态栏,ok,先声明一下:本篇博客效果下图:关于这个状态栏变色到底叫「Immersive Mode」/「Translucent Bars」有兴趣可以去 为什么在国内会有很多用户把 「透明栏」(Translucent Bars)称作 「沉浸式顶栏」?上面了解了解,请勿指点我说的博文标题起得不对,thx。恩,接下来正题。首先只有大于等于4.转载 2015-10-30 16:37:38 · 717 阅读 · 0 评论 -
Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
大家好,欢迎继续回到Android属性动画完全解析。在上一篇文章当中我们学习了属性动画的一些进阶技巧,包括ValueAnimator和ObjectAnimator的高级用法,那么除了这些之外,当然还有一些其它的高级技巧在等着我们学习,因此本篇文章就对整个属性动画完全解析系列收个尾,来学习一下剩下的非常重要的高级技巧。另外,本篇文章中使用的代码是建立在上篇文章基础之上的,如果你还没有阅读过前转载 2015-07-07 11:06:07 · 408 阅读 · 0 评论 -
Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是最常用的一些用法,这些用法足以覆盖我们平时大多情况下的动画需求了。但是,正如上篇文章当中所说到的,属性动画对补间动画进行了很大幅度的改进,之前补间动画可以做到的属性动画也能做到,补间动画做不到的现在属性动画也可以做到了。因此,今天我们就来学习一下属性动画的高级用法,看看如何实现一些补间动画所无法实现的功能。阅读本转载 2015-07-07 11:02:56 · 466 阅读 · 0 评论 -
Android属性动画完全解析(上),初识属性动画的基本用法
在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系统在一开始的时候就给我们提供了两种实现动画效果的方式,逐帧动画(frame-by-frame animation)和补间动画(tweened animation)。逐帧动画的工作原理很简单,其实就是将一个完整的动画拆分成一张张单独的图片,然后再将它们连贯起来进行播放,类似于动画片的工作原理。补间动画则是可以对View进行一系列的动转载 2015-07-07 10:58:45 · 405 阅读 · 0 评论 -
Android 增强版百分比布局库 为了适配而扩展
一 概述上周一我们发布了Android 百分比布局库(percent-support-lib) 解析与扩展中对percent-support这个库进行了解析和添加了PercentLinearLayout的支持。那么为什么本篇博客的存在的意义是什么呢?首先我们回顾下百分比布局库的用法,提供了PercentRelativeLayout、PercentFrameLayout供大家转载 2015-07-07 12:05:26 · 508 阅读 · 0 评论 -
移动设备的“声波通信/验证”的实现——SinVoice开源项目介绍(二)
在上一篇的文章中,我们介绍了声波通信/验证的原理和基本使用,这一篇,我们将就一些细节进行谈论。 再来一张项目的结构图 SinVoicePlayer类是我们使用的时候直接接触的类,通过调用play()方法,我们就能将需要传输的数字播放出去,下面是这个类的代码实现[java] view plaincopy转载 2015-04-08 15:07:21 · 877 阅读 · 0 评论 -
移动设备的“声波通信/验证”的实现——SinVoice开源项目介绍(一)
前两篇介绍了声波验证/通信的原理和声音播放的实现,这一篇将介绍最重要,也是最难懂的东西,就是SinVoice是如何对这些数字进行编码传输的。 因为源代码中加入了大量的难以区分的回调函数,为了阅读方便,我进行了部分的重命名和代码的整理,大家不要感到诧异。 首先给出项目的结构: 这篇文章重点介绍是Encoder类、SinGenera转载 2015-04-08 15:05:48 · 1266 阅读 · 0 评论 -
移动设备的“声波通信/验证”的实现——SinVoice开源项目介绍(三)
前两篇介绍了声波验证/通信的原理和声音播放的实现,这一篇将介绍最重要,也是最难懂的东西,就是SinVoice是如何对这些数字进行编码传输的。 因为源代码中加入了大量的难以区分的回调函数,为了阅读方便,我进行了部分的重命名和代码的整理,大家不要感到诧异。 首先给出项目的结构: 这篇文章重点介绍是Encoder类、SinGenera转载 2015-04-08 15:09:49 · 843 阅读 · 0 评论 -
Android数据库高手秘籍(八)——使用LitePal的聚合函数
在上一篇文章当中,我们已经把LitePal查询操作的所有用法都学习完了,很显然,LitePal帮我们提供了非常强大的查询API,使得我们可以极度轻松地完成各种类型的查询。但是呢,在SQL语句当中,有一种查询是比较特殊的,就是聚合函数查询,它不像传统查询一样是将表中的某些列的数据查询出来,而是将查询结果进行聚合和统计,最终将统计后的结果进行返回。因此,任何一个关系型数据库中都会提供像count()、转载 2015-03-23 09:30:44 · 567 阅读 · 0 评论 -
Android最佳性能实践(一)——合理管理内存
有不少朋友都问过我,怎样才能写出高性能的应用程序,如何避免程序出现OOM,或者当程序内存占用过高的时候该怎么样去排查。确实,一个优秀的应用程序,不仅仅要功能完成得好,性能问题也应该处理得恰到好处。为此,我也是阅读了不少Android官方给出的高性能编程建议,那么从本篇文章开始,我就准备开始写一个全新系列的博文,来把这些建议进行整理和分析,帮助大家能够写出更加出色的应用程序。注意本系列文章的转载 2015-03-23 10:47:26 · 589 阅读 · 0 评论 -
Android最佳性能实践(三)——高性能编码优化
在前两篇文章当中,我们主要学习了Android内存方面的相关知识,包括如何合理地使用内存,以及当发生内存泄露时如何定位出问题的原因。那么关于内存的知识就讨论到这里,今天开始我们将学习一些性能编码优化的技巧。这里先事先提醒大家一句,本篇文章中讨论的编码优化技巧都是属于一些“微优化”,也就是说即使我们都按照本篇文章的技巧来优化代码,在性能方面也是看不出有什么显著的提升的。使用合适的算法与数据结转载 2015-03-23 10:49:58 · 462 阅读 · 0 评论 -
Android 属性动画(Property Animation) 完全解析 (上)
1、概述Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Animation相当简单,不过只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性。比如:你希望View有一个颜色的切换动画;你希望可以使用3D旋转动画;你希望当动画停止时,View的位置就是当前的位置;这些Vi转载 2015-03-12 11:46:27 · 635 阅读 · 0 评论 -
Android SurfaceView实战 带你玩转flabby bird (下)
1、概述在Android SurfaceView实战 带你玩转flabby bird (上)中,我们完成了在游戏所需的所有的元素的绘制,包括 Bird鸟、 Floor地板、Pipe 管道 、背景图以及分数等。本篇博客将在上篇的基本上,继续带领大家向我们的目标进发,那么问题来了,我们的目标是:就是这个效果图了。首先我们明确下,当然我们的状态与上图的差距转载 2015-03-11 16:47:22 · 441 阅读 · 0 评论 -
Android 百度地图 SDK v3.0.0 (三) 添加覆盖物Marker与InfoWindow的使用
上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向,如果你还不清楚,请查看:Android 百度地图 SDK v3.0.0 (二) 定位与结合方向传感器,本章会教大家如何添加覆盖物,实现周边搜索,以及对覆盖物的点击出现介绍等效果。效果图:我们的需求是,当用户点击衣食住行,或者对对附近搜索是,从服务器返回数据(经纬度,商家信息,介绍等),然后动态生成覆盖转载 2015-03-11 09:35:57 · 712 阅读 · 0 评论 -
Android SurfaceView实战 带你玩转flabby bird (上)
1、概述哈,记得以前写过Android SurfaceView实战 打造抽奖转盘 , 同属于SurfaceView系列,基本可以从这篇博文中学习到SurfaceView的用法,以及利用SurfaceView做抽奖转盘。但是其中缺少一部分的知识点,就是与用户交互时界面的改变,所以今天给大家再带来本篇博文教大家如何做flabby bird这款游戏,这游戏虽然不难,但是也为其作者挣了不少钱,转载 2015-03-11 16:45:15 · 512 阅读 · 0 评论 -
Android 百度地图 SDK v3.0.0 (四) 引入离线地图功能
一直觉得地图应用支持离线地图很重要啊,我等移动2G屌丝,流量不易,且用且珍惜。对于官方开发指南对于离线地图的教程,提供了两种方案:第一,手动导入,先将从官网下载的离线包解压,把vmp文件夹拷入SD卡根目录下的BaiduMapSDK文件夹内。好吧,我表示不能接受,无视了。第二,接口下载方法如下:mOffline.start(cityid);还比较靠谱,就是没详细介绍。转载 2015-03-11 09:37:28 · 684 阅读 · 0 评论 -
实现app上对csdn的文章查看,以及文章中图片的保存 (制作csdn app 完结篇)
今天给大家带来CSDN的完结篇,即加入文章的查看和文章中图片的保存~今天的目标:首先是对控件使用的考虑,既然是网络上的文章,可能首先想到的就是webview,这里直接把页面载入到webview中是肯定不行的,首先得把页面上的数据解析,然后可能需要一个html的模版,然后把数据填充到模版,再将模版用于webview的展示。想了想,还是不是很方面,因为不确定文章中的段落、图转载 2015-03-06 17:50:39 · 601 阅读 · 0 评论 -
Android 百度地图 SDK v3.0.0 (一)
最近公司要把百度地图集成的项目中,于是我就研究了一天百度地图的SDK,当前的版本:Android SDK v3.0.0 。 虽然百度地图网上相关代码比较多,大多可能都是比较旧的版本,且百度地图API的改动感觉也比较大,所以再此跟大家分享一下一天的劳动成功。下面简单展示下,博客中会介绍的功能:1、功能介绍a、首先肯定是导入地图,然后就是地图模式的一些切换,普通,卫星,实时交通什么转载 2015-03-11 09:28:35 · 906 阅读 · 0 评论 -
实现app上对csdn的文章列表上拉刷新下拉加载以及加入缓存文章列表的功能 (制作csdn app 四)
今天继续对我们的csdn客户端未完成的功能进行实现,本篇博客接着客户端上显示csdn上的各类别下的的文章列 (制作csdn app 三)继续完善我们的app。今天的目标是:1、对文章列表的下拉刷新,上拉加载。2、没有网络的情况下,依然可以看到缓存在手机上的文章列表,以及上拉加载等。大概效果图:1、首先是对MainFragment.java编写转载 2015-03-06 17:00:52 · 665 阅读 · 0 评论 -
Android 使用Fragment,ViewPagerIndicator主要框架(制作csdn app一)
本来准备下载个CSDN的客户端放手机上,没事可以浏览浏览资讯,下载了官方的之后,发现并不能很好的使用。恰好搜到一个大神自己写的csdn的app,下载安装了一下,感觉很不错,也很流畅,基本满足了我们 日常浏览的需求。app效果图:我会在博客中完整的介绍这个项目的制作,第一篇当然是整个项目的整体结构了。效果图:转载 2015-03-06 16:02:22 · 788 阅读 · 0 评论 -
抓取csdn上的各类别的文章 (制作csdn app 二)
这篇博客接着上一篇(Android 使用Fragment,ViewPagerIndicator 制作csdn app主要框架)继续实现接下来的功能,如果你想了解整个app的制作过程,你可以去看一下上一篇,当然如果你只对网页信息的抓取感兴趣,你可以直接阅读本篇博客。我会把app功能分解,尽可能的每篇之间的耦合度不会太高。好了,开始进入正题。这篇内容我新建一个java项目实现,一方面jav转载 2015-03-06 16:07:34 · 731 阅读 · 0 评论 -
Android 实战美女拼图游戏 你能坚持到第几关
1、概述继2048之后,今天给大家带来一个拼图游戏,当然了不是很传统那个缺一块的拼图,那游戏我不会玩~~所有我们换个方式玩拼图,怎么玩呢,把图片且成很多份,点击交换拼成一张完整的;这样关卡也很容易设计,3*3;4*4;5*5;6*6;...一直下去....博客产生的原因是,没事在网上逛看到一个图片切片的辅助类,类很简单,上面说了一句,如果做拼图游戏的话可以用到,然后,我们就用到了~转载 2015-03-11 16:17:10 · 1084 阅读 · 0 评论