- 博客(61)
- 资源 (8)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 android存储访问框架Storage Access Framework
在了解storage access framework之前,我们先来看看android4.4中的一个特性。如果我们希望能选择android手机中的一张图片,通常都是发送一个Intent给相应的程序,一般这个程序是系统自带的图库应用(如果你的手机中有两个图库类的app很可能会叫你选择一个),这个Intent一般是这样写的:Intent intent=new Intent(Intent.A
2014-10-27 10:18:26
4065
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 AndroidSlidingUpPanel控件的用法以及简单解析
一个能够向上滑动的时候往上飞出一个显示区域的控件,类似于play music中的效果。该控件在主界面中有一个如下图红色箭头所指的底部触发区域:该区域点击的时候被隐藏在下方的内容将网上漂移到顶部,直到被隐藏的内容完全挡住原来的布局,但是这个触发区域仍然存在,如图。当被隐藏区域完全显示,这时再次点击触发区域(或者是通过下滑的手势)将恢复到最初的状态。一般再未点击的时候,这个
2014-10-17 12:59:50
2839
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 android官方侧滑菜单DrawerLayout详解
drawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。drawerLayout分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏(drawerLayout自身特性),主内容区的内容可以随着菜单的点击而变化(这需要使用者自己实现)。draw
2014-09-28 22:21:50
2474
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 ViewDragHelper详解
2013年谷歌i/o大会上介绍了两个新的layout: SlidingPaneLayout和DrawerLayout,现在这俩个类被广泛的运用,其实研究他们的源码你会发现这两个类都运用了ViewDragHelper来处理拖动。ViewDragHelper是framework中不为人知却非常有用的一个工具。ViewDragHelper解决了android中手势处理过于复杂的问题,在DrawerL
2014-09-16 12:10:08
4732
8
翻译 Android中保存和恢复Fragment状态的最好方法
英文原文:Probably be the best way (?) to save/restore Android Fragment’s state so far 关键点:Fragment的Arguments。经过这几年使用Fragment之后,我想说,Fragment的确是一种充满智慧的设计,但是使用Fragment时有太多需要我们逐一解决的问题,尤其是在处理数据保持的时候。
2015-03-29 14:04:33
9925
翻译 Google推荐的图片加载库Glide介绍
在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech。这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会上发布的官方app。它的成功让我非常感兴趣。我花了一整晚的时间把玩,决定分享一些自己的经验。在开始之前我想说,Glide和Picasso有90%的相似度,准确的说,就是Picasso的克隆版本。但是在细
2015-03-29 11:39:13
4824
14
原创 BezierDemo源码解析-实现qq消息气泡拖拽消失的效果
这篇文章中我们比较了DraggableFlagView和BezierDemo两个项目的区别,提到将对其中一个做源码分析,那么我们就来分析BezierDemo的源码吧,因为这个项目的源码最简单,可以更直接的去分析核心的东西。但是效果还是DraggableFlagView好些。我尽量讲的详细些,满足更多的初学者。这篇文章主要分析拉伸效果的实现。源码结构BezierDemo只有两个java文
2015-03-12 14:54:54
1357
翻译 实现Instagram的Material Design概念设计
几个月前(这篇文章的日期是2014 年11月10日),google发布了app和web应用的Material Design设计准则之后,设计师Emmanuel Pacamalan在youtube上发布了一则概念视频,演示了Instagram如果做成Material风格会是什么样子:这仅仅是停留在图像上的设计,是美好的愿景,估计很多人都会问,能否使用相对简单的办法将它实现出来呢?答案是:ye
2015-02-06 13:45:44
1376
翻译 Activity和Fragment Transition介绍
这篇文章是对n Android 5.0 中Activity和Fragment transition API的一个总体回顾,这是关于transition系列文章的第一篇。第一章: Activity和Fragment Transition介绍第二章: 深入理解内容变换(Content Transition)第三章上: 深入理解共享元素变换(Shared El
2015-02-03 11:39:48
1310
原创 android中如何实现离线缓存
离线缓存就是在网络畅通的情况下将从服务器收到的数据保存到本地,当网络断开之后直接读取本地文件中的数据。将网络数据保存到本地:你可以自己写一个保存数据成本地文件的方法,保存在android系统的任意目录(当然是有权限的才行),但是在这种情况下使用Context的openFileOutput方法最简便也最符合我们的场景,下面的saveObject方法演示了如何用openFileOutput
2014-12-12 12:34:08
2091
1
原创 GossipView:圆圈布局的自定义view
当我们想展示一个数组形式的数据的时候,要么是使用列表的形式,要么是使用网格的形式,今天我们介绍一种奇葩的形式,圆圈形式:注意,周边的扇形是可以点击的。如果使用现有控件,要实现起来是有难度的,所以我们就采用了自定义View的方式。下面是原理以及使用方法,整个项目可以到这里下载:https://github.com/jianghejie/GossipView绘制主要是外部扇形以及内
2014-11-15 15:00:17
1218
原创 9个完整android开源app项目
android开源项目有很多,但是完整的app项目不多,下面是最近我从 jcodecraeer网站 整理的一些开源app项目:注: jcodecraeer网站上搜集了很多开源项目,更新很快,非常值得关注。一、photoup介绍:photoup 是一款开源的相册类app,主要功能是将本地图片提交到facebook上去,虽然他的功能和facebook的远程服务相关,但是本
2014-11-14 13:53:10
14602
原创 ListView多选操作模式详解CHOICE_MODE_MULTIPLE与CHOICE_MODE_MULTIPLE_MODAL
这篇文章我们将详细的介绍如何实现ListView的多选操作,文中将会纠正在使用ListViewCHOICE_MODE_MULTIPLE或者CHOICE_MODE_MULTIPLE_MODAL时容易犯的错误,以及CHOICE_MODE_MULTIPLE与CHOICE_MODE_MULTIPLE_MODAL的区别。最后我们将给出一个demo来演示两种多选操作的实现。一、在不使用Li
2014-11-06 14:31:25
4470
4
原创 如何实现两个ViewPager的联动
以前写过一篇文章,讲的是如何实现zaker5.0的引导界面效果,见 仿zaker最新版本引导界面的视图联动效果(修改viewpager实现) ,没有写完就了事了,这篇文章算是对那篇的继续。我们先来看看最终效果:联动ViewPager的意思就是当一个viewpager在滑动的时候,另外一个ViewPager也跟着滑动,而且两者是同步的。如果ViewPager有关于移动距离的回调
2014-11-03 10:39:05
2358
原创 android中选择控件与选择界面自然过度效果的实现--一种新的交互设计
在安卓中常常遇到需要选择一个东西的功能,比如选择日期,选择文件,选择地点等,通常我们的做法是使用选择对话框,比如选择日期用datepicker,有时候也使用activity,但是这两种方式都有一个缺点,就是用户很明显的感觉到了界面之间的切换。有时候,下面这种选择数据的交互方式应该会更好些:其实上面的app效果来自与CapitaineTrain应用,好像是一个乘火车的app,而该app的作者也将
2014-10-31 09:10:19
3198
6
原创 ListView优化adapter getview的两种方式ViewHolder vs HolderView
一、ViewHolder方式如果你还没听说过ViewHolder,那么你该去好好看看官方文档了,而不是埋头写代码。一个ListView的item布局中需要赋值的子元素太多为了避免重复的调用FindViewById方法,我们一般考虑使用ViewHolder方式来实现BaseAdapter。如下://在外面先定义,ViewHolder静态类static class ViewHolde
2014-10-23 11:06:07
2070
3
原创 22个值得收藏的android开源代码-UI篇
本文介绍了android开发者中比较热门的开源代码,这些代码绝大多数可以直接应用到项目中。FileBrowserView一个强大的文件选择控件。界面比较漂亮,使用也很简单。特点:可以自定义UI;支持复制、剪切、删除、移动文件;可以用在Fragment、ativity、DialogFragment中;支持快速切换目录。http://jcodecraeer.com/a/open
2014-10-20 10:35:18
2677
4
原创 dedecms独立模型分页功能的完善
dedecms其实在架构方面没什么问题,但是估计里面有些功能是新手做的吧,有很多待完善的地方,比如分页功能,从代码可以直接看出当时的负责人有敷衍了事的心里。dede的分页如果有两个页码显示的话,无法显示出总的文章数,举个例子:在普通文章模型下面,列表的分页是这样的:但是在独立模型中就成了这样了最后面的共*页*条的信息不见了,相信遇到这个问题的同学首先想到的是自己哪里用错了,
2014-10-12 23:38:29
1989
原创 [Android]实现数字的3d翻转效果
传统的旋转动画方式如: <rotate android:fromDegrees="0" android:toDegrees="359" android:duration="500" android:repeatCount="-1" android:pivotX="50%" andro
2014-10-12 21:17:19
1748
原创 android开源代码站开通啦!
模仿了code4app 做了个android版本的开源代码搜集功能,http://jcodecraeer.com/plus/list.php?tid=31还在
2014-10-10 02:43:59
1101
2
原创 实现一个与内容合二为一的ActionBar动画效果
实现一个与内容合二为一的ActionBar动画效果,让你的actionbar更生动。下面是效果图:这种效果的好处是让actionbar也成为了内容的一部分,实际应用的效果比图片展示的效果要好,除了actionbar渐渐出现的效果外,背景图片还有一种称之为 Ken Burns effect 的动态效果。下面讲解实现过程。设置actionbar的样式,我们需要如下两点:1.
2014-09-30 09:26:37
2290
2
原创 javascript和css实现垂直方向自适应的三角提示菜单
查看demo这是一个比较简单实用的菜单,最重要的是他不需要引用jQuery库。菜单在垂直方向上能做到自适应,当主菜单靠近顶部,子菜单将会在下面,当主菜单靠近底部,子菜单在上面。运用Modernizr的触摸检测功能,我们可以让子菜单的响应在pc上是hover,而在触摸设备上是点击。例子中还示范了如何在宽度比较窄的情况下如何调整布局。html代码 Ho
2013-06-18 22:26:28
2518
1
转载 移动设计开发入门
随着智能手机、平板电脑的快速普及,越来越多的企业意识到建立自己的APP应用和移动网站,也有越来越多设计师开始转战移动平台。本篇主要介绍移动平台的一些入门知识和各平台的设计要求。一. 移动产品的实现方式移动产品的实现方式主要有三种:①Native App;② Web App;③ Hybrid App① Native App指的是本地化应用,就是我们从应用商店下载安装的独立应用,类似
2013-05-05 14:47:54
1377
原创 负边距(negative margin)实现自适应的div左右排版
我记得我写过一篇 css中的负margin技术以及运用 的文章,那是很久以前的事了,现在看来那篇文章讲了很多,但是始终没把握好重点,现在再通过这篇文章clear一下思路。 左右排版本来是可以这样实现的:两边都使用百分比,然后左右浮动。但是这样做满足不了下面这样的场景: 在一个文章页面里面,分为左边的正文区域和右边的与文章关联的其他信息区域,我想让正文区域能随着用户的显示屏宽
2013-04-12 21:35:46
1256
原创 30个创意十足的博客设计欣赏
如今博客几乎无处不在,如果你的博客平淡无奇,那么失败是显而易见的,成功的博客设计一定能在前几秒钟深深的吸引用户的眼球。你的网站内容也许是你高质量的杀手锏,但是没有光鲜的外表,在这个快速运转的世界里面是很容易黯然失色的。 下面这三十个博客设计显然在布局上面非常有创意,希望你能喜欢,并从中激发出属于自己的灵感。 justBcoz ↓Ashley Tisdale ↓
2013-04-11 19:17:49
1331
翻译 谷歌不在关注WebKit了,正在研发新浏览器内核Blink
Mozilla和三星本周也宣布,将合作开发下一代浏览器渲染引擎Servo。但是blink的目的好像不是要和Servo竞争,而是Safari。 对于为何要推出Blink,谷歌解释称,Chromium与WebKit浏览器有着不同的多进程架构。谷歌工程师亚当·巴斯(Adam Barth)表示:“过去几年中,支持多种架构给WebKit和Chromium项目增加了复杂性。”因此,这种方式对“创新
2013-04-04 09:24:07
1335
转载 Think different & be yourself 缅怀乔布斯
关于苹果几乎每天都在有人谈及,分析苹果的文章也四处都是,在这里我想写一些不一样的,这些在我看来更接近苹果精神的。这些精神我认为源自乔布斯,在前面的许多年中也只有他能守护,以他那种被八卦周刊们称做"人品差"(其实我很怀疑这只是因为他对记者和媒体太不友好,大家玩命黑他)的那种独裁、固执的方式守护。在苹果公司网站上缅怀乔布斯的文字中,最后一句是"Steve留下了一家唯有他才能创建的企业",正是如此。
2013-04-01 19:38:21
879
转载 Google的社会化梦想与Reader
一 搜索与社会化Google Reader的前产品经理在Quora回答了关于Reader关闭的问题 ,导致Google Reader被关闭的主要原因是Google Plus。这并不是一个出乎意料的答案,从Google把Reader的分享功能强制转到Google Plus之后,很多人都知道,这一天早晚会来。Google Plus是一个让我非常不喜欢的产品,但讨论这个产品,必须要从搜索和社会化
2013-04-01 19:34:45
871
原创 Android 4.0日历(calendar)源码分析之CalendarController(事件分发)
日历在主体上只有一个AllInOneActivity.java,然后分别是各种Fragment。这就需要一个中介来统一处理他们的关系,AllInOneActivity和Fragment之间,以及不同的Fragment之间的通信(主要是事件),都是通过CalendarController这个类来完成的。当在某个Fragment中想要发出一个事件的时候,该Fragment会用到自己实例化的Cale
2013-03-23 16:04:35
5815
原创 Android 4.0日历(calendar)源码分析之概览
Calendar从4.0开始,谷歌android系统有了脱碳换骨的改变,相应的日历应用的代码架构也跟2.*完全不同。代码更规范,当然也更复杂,且涉及到了android开发的方方面面。如果你熟悉了ics(4.0)版本的日历代码,你应该也是一个应用层高手了。4.0以上的版本日历做了相应的改进,但是代码架构没变,且改动也不大。而且我猜测未来的6个版本之类日历的架构都不会再变了。 这里要说
2013-03-21 19:46:01
4548
4
转载 Android应用开发中的风格和主题(style,themes)
当你设计你的程序的时候,你可以用风格和主题来统一格式化各种屏幕和UI元素。风格是一个包含一种或者多种格式化属性的集合,你可以将其用为一个单位用在布局XML单个元素当中。比如,你可以定义一种风格来定义文本的字号大小和颜色,然后将其用在View元素的一个特定的实例。主题是一个包含一种或者多种格式化属性的集合,你可以将其为一个单位用在应用中所有的Activity当中或者应用中的某
2012-10-14 21:45:38
888
转载 Android中如何检测重力感应变化:Sensor和SensorManager
在实际开发中我遇到一个让人很蛋疼的问题,大致是当我点击某一个按钮的时候,强制切换为横屏显示,这个很容易做到,只需在onclick里面调用setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE),就能做到了。但是需求说还没完,当我横屏看完了之后,我把手机竖起来,又能切换成竖屏。可是这回我已经去掉了屏幕随重力感应变化而变化的响
2012-10-11 23:37:16
3008
翻译 微软终于获得UI设计之道了?
一向以杂乱不堪闻名的微软是不是开始懂得了UI设计中需要做到风格一致性这一基本定律了呢?微软会成为一家在设计领域的明星公司吗,就像苹果那样?与过去的失败相比,最近微软所传递出来的崭新设计新风向可能会使每一个人(不管你是一个果粉用户还是一个普通pc用户)感到惊讶,这个来自雷德蒙德(美国华盛顿州城市,微软总部)的男孩到底走了多远。粗鄙的过去我是一个微软设计团队的fans这件事已经
2012-10-08 20:55:25
1750
转载 Android中隐式Intent的用途-intent-filter过滤器(1)-理论部分
对于明确指出了目标组件名称的Intent,我们称之为“显式Intent”。对于没有明确指出目标组件名称的Intent,则称之为“隐式Intent”。Android系统使用Intent Filter 来寻找与隐式Intent相关的对象. 隐式Intent往往用于不同应用程序之间的使用。由于开发人员往往并不清楚别的应用程序的组件名称,因此,隐式Intent便尤为重要。
2012-10-03 09:52:09
1753
原创 dede独立模型无法调用缩略图的问题
dede有很强的扩展性,对于会二次开发的人来说,这极大的增加了灵活性,其中独立模型就是一种很好的设计。但是这个独立模型在底层代码方面不是很严谨(dede的不严谨之处还有很多),我在前台调用litpic属性的时候,发现无论我是否添加了缩略图,显示的都是dede的默认图片。这绝对是一个bug这篇文章在我的个人网站发表:http://jcodecraeer.com/a/phpjiaocheng/
2012-07-15 23:16:44
2061
翻译 css实现简约的纸张卷角效果
英文原文 http://designshack.net/articles/css/code-a-simple-folded-corner-effect-with-css/ 本文最先发表在我的个人网站:http://jcodecraeer.com/a/cssjiqiaoyuguifan/2012/0628/289.html这篇文章中我们将介绍如何制做paper左上角的卷角效果。我
2012-07-03 15:45:31
4071
转载 数据库性能优化之冗余字段的作用
什么是冗余字段? 在设计数据库时,某一字段属于一个表,但它又同时出现在另一个或多个表,且完全等同于它在其本来所属表的意义表示,那么这个字段就是一个冗余字段。——以上是我自己给出的定义 冗余字段的存在到底是好还是坏呢?这是一个不好说的问题。可能在有人看来,这是一个很蹩脚的数据库设计。因为在数据库设计领域,有一个被大家奉为圭臬的数据库设计范式,这个范式理论上要求数据库设计逻辑
2012-06-24 15:17:37
1235
原创 ajax方法写一个在线斗地主的游戏,第一章-开发前的准备工作
很久以前就在思考用ajax实现一个游戏功能的程序,朋友说你做一个斗地主的游戏吧,于是在他们的怂恿之下我开始着手用js来实现。这里实现的是三人斗地主.首先我们是用ajax方法与服务器交换数据的,所以学要一个创建ajax对象的方法:123456789101112131415161718192
2012-06-10 22:51:02
1126
原创 dede问答平台开发笔记1
dedecms有个问答平台的模块,安装该模块之后会在根目录下面生成一个ask的目录,相关的代码和模板都在里面了,当然安装过程中还在数据库中添加了和问答相关的数据。其实模块是和系统其它部分比较独立的程序集合,我发现这个问答模块的代码结构和dede其它地方的代码结构差别比较大,可能是程序员不同吧,问答模块基本上是基于mvc设计模式的,至少代码看上去和很多mvc框架相似,而且在问答模块里面,采用
2012-05-07 14:20:03
1057
转载 JS里的各种trim实现
前不久blog频道有人发表了一篇讲js里各种trim实现的 http://justjavac.iteye.com/blog/933093不过没有提及Dojo中的trim。Dojo中有两种trim实现:1.较为常用的:Js代码 dojo.trim = String.prototype.trim ? function(str){ re
2012-04-28 16:04:25
1934
ListView多选操作
2014-11-06
android中选择控件与选择界面自然过度效果的实现
2014-10-30
AnimatedColorPickerDialog
2014-09-30
DrawInsetsFrameLayoutDemo
2014-09-30
PinterestLikeAdapterView显示本地图片
2014-09-20
android segmented control
2014-09-18
啊D注入工具_V2.32
2009-07-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人