自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fyfcauc的专栏

Keep Sharp

原创 Bye POJ

截个屏留个念吧,以后估计不会再碰了。

2015-03-31 10:45:38

阅读数 315

评论数 0

转载 用Gradle 构建你的android程序

From: http://www.cnblogs.com/youxilua/archive/2013/05/20/3087935.html 用Gradle 构建你的android程序 前言 android gradle 的插件终于把混淆代码的task集成进去了,加上最近,android stu...

2015-03-30 15:19:33

阅读数 290

评论数 0

原创 ThreadUtils

ThreadUtils: 提供了对Android的handler一系列封装简化操作,项目必备。 该类内部会维护一个UIhandler, 出于lazyInit的目的,该handler作为某个    内部static类的private static成员并在该class被load的时候才会...

2015-03-27 14:55:13

阅读数 786

评论数 0

原创 FileUtils

FileUtils: 顾名思义,用于处理和File相关的一个static工具函数类。 对于这种工具类本身,一般会为其加一个final的modifier,毕竟一般来说是没有被继承的必要的。 取得文件后缀的函数: 很简单,但是要考虑这种情况:    .tar.bz2/.tar.gz...

2015-03-27 13:54:58

阅读数 322

评论数 0

原创 ViewUtils

项目 ViewUtils的总结: 一般一个成熟长期的项目必然会有一堆XXXUtils/Helper之类的静态工具/单例类, 这些类最大的作用是消除code duplicate,以及屏蔽实现细节,对于android这种API经常 变的平台,Utils包装细节可以很好的和系统版本解耦。 计划将这些U...

2015-03-19 15:55:40

阅读数 491

评论数 0

转载 Android程序自动化打包

From: http://blog.csdn.net/nomousewch/article/details/21984361 注意key.alias要给成自己的key alias 概述         在一般的Android开发中,我们通常使用Eclipse自带的导出工具来进行App...

2015-03-17 17:50:09

阅读数 287

评论数 0

原创 Browser 架构

公司产品的一个架构,这个架构是外国总部那边就设计好的,在这边唯一的一次比较大改动是一个牛人引入了HistoryPart结合ViewPager实现了滑动的前进后退。 ProxyBrowserView 在被构造的时候会被传入BrowserManager, 一个 ProxiedBrowserView,...

2015-03-17 16:58:30

阅读数 788

评论数 0

原创 Wallpaper模块(2)

Wallpaper模块(2): WallPaperFragment extends ButtonReceiveFragment, 后者是项目的一个基础类,作用很简单,在被attach到某个Actviity时,如果Actviity 是一个ButtonProvider,那么该fragment...

2015-03-13 16:54:22

阅读数 468

评论数 0

原创 Wallpaper模块(一)

Wallpaper模块(1) Picker是一个用于从交互的选取图片类的Activity中获得所选图片的类. Tool. 对外开放Listen接口,取图成功和取图失败. Picker因为定位是一个tool,因此设计为单例模式,load Class 即生成实例. early-init. 因为...

2015-03-13 15:28:10

阅读数 332

评论数 0

原创 项目中Fragment show/pop的使用和实现

总结一下项目中对Fragment show/pop的使用和实现: 很简单,简单的包装套了个命令模式. 在规划整体的layout时,就预先为Fragment留了几个View作为container. 打好地基,以后基本没有更改过. show/pop Fragment的操作采用了 命令模式, 封装为...

2015-03-12 16:49:54

阅读数 612

评论数 0

原创 Android Bitmap资源的简单池化

Android Bitmap资源的简单池化 说一下Bitmap池化的原因: Bitmap在内存中的体现基本就是一大块的内存,当然还有对应的类的数据, 这就造成了Bitmap的create 以及在被dalvik GC的时候会付出比较大的时间代价. 池化说白了就是空间换时间,开辟一个回收池,作为一个...

2015-03-12 11:27:24

阅读数 739

评论数 0

原创 Java 一种Impl类的封装方法

有时候会有这样一种需求: 一个baseClass有一个static的getInstance方法,而在该基类中又定义了几种定位不同需求extends自此类的subClass 未知的>,然后基类的getInstance方法根据不同情况返回不同的subClass子类实例,因为都是extends...

2015-03-12 10:19:57

阅读数 1448

评论数 0

原创 Dragger模块

Dragger模块 Dragger模块是项目的一个base模块,用于实现对所挂接View的drag位移. 这个模块设计的理念很好,体现了V 和 C 完全独立分离的思想, 随便一个View,被Dragger挂接上即可在parent内跟随Touch移动. 其实本质上就是之前Tab模块中...

2015-03-11 21:28:47

阅读数 429

评论数 0

原创 FrameLayout中移动childView

今日偶然想起了在某个FrameLayout中通过childView.layout()来实现移动childView的code. 又想到FrameLayout在自己的onLayout中基本只考虑child layout_gravity/margin/padding 这个因素,其他的一律按照对齐到原点来...

2015-03-11 15:28:30

阅读数 471

评论数 0

原创 Night模块(二)

Night模块(二) NightMode的具体实现这个手法值得梳理归纳一下. 首先,NightMode的切换并不是简单的变暗/亮, 而是整体配色方案的变化,注意是整体,有一个View没有变过来就会造成强烈的违和感. 整体配色方案的变化包括了很多细节, View的background, 字体颜色...

2015-03-11 14:20:11

阅读数 504

评论数 0

转载 解决android:background背景图片被拉伸问题

From: http://blog.csdn.net/oathevil/article/details/23707359 ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的...

2015-03-11 11:48:31

阅读数 909

评论数 0

转载 android Defining custom attrs

From: http://stackoverflow.com/questions/3441396/defining-custom-attrs/3441986#3441986 531 down vote accepted Currently t...

2015-03-11 11:20:57

阅读数 537

评论数 0

原创 Night模块(一)

Night模块(一) Night模块是前期的试手项目,虽然比较简单,不过因为本blog的目的就是记录所有自己的工作点滴, 因此这个也不会漏掉. NightMode其中一个组件就是提供一个夜间日间模式切换的动画, 产品和设计给的设计稿就是一个太阳/月亮按照某种可计算的轨迹升起/落下,并且伴随着整...

2015-03-10 22:04:40

阅读数 401

评论数 0

转载 Service启动及参数

Service创建有两种方法: startService或者bindService   服务不能自己运行,需要通过调用Context.startService()或Context.bindService()方法启动服务。这两个方法都可以启动Service,但是它们的使用场合有所不同。使用start...

2015-03-10 18:18:46

阅读数 907

评论数 0

转载 Android的FrameLayout使用要注意的问题

From: http://blog.csdn.net/pocoyoshamoo/article/details/9722399?utm_source=tuicool 帧布局FrameLayout在Android的五大布局中是最简单的布局方式,在需要布局中的控件有重叠的情况下才使用。 ...

2015-03-10 11:17:27

阅读数 808

评论数 0

转载 dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算

dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算 一、基本概念 dip        : Density independent pixels ,设备无关像素。 dp        :就是dippx        : 像素dpi       :dots pe...

2015-03-09 22:10:21

阅读数 459

评论数 0

原创 Tab 模块 总结

Tab 模块总结 从整体上对TabMenu这个模块的一些设计分析: 为了实现全屏推拉TabMenu,MovingMenu是叠在mainUI上面的,两者都在一个FrameLayout中,并且MovingMenu都是 match_parent来实现了全屏覆盖. MovingMenu作为FrameL...

2015-03-09 18:47:28

阅读数 858

评论数 0

转载 Android中Bitmap和Drawable

一、相关概念 1、Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相应的可画对象 2、Canvas画布,绘图的目的区域,用于绘图 3...

2015-03-09 16:42:07

阅读数 241

评论数 0

原创 Tab 模块 (五)

Tab 模块 (五) TabViewListAdapter extends BaseAdapter. Adapter承载了M和C的角色, 同时因为自己实现的ListView没有实现convertView机制, 因此在Adapter里面搞了一套View cache机制来提升性能. 而由此也引入了...

2015-03-09 14:26:17

阅读数 454

评论数 0

原创 LinearLayout 对各种layout_width/height的展现

项目中LinearLayout和FrameLayout的使用是最多的, FrameLayout对种layout_wd 简单整理总结一下LinearLayout对各种Layout_width/height的展示: <LinearLayout xmlns:android="http...

2015-03-09 10:14:49

阅读数 315

评论数 0

原创 Tab 模块 (四)

Tab 模块 (四) TabViewListView是真正负责显示TabView,以及相关TabView交互的View, extends AdapterView, 使用AdapterView而不是更为现成的ListView的原因是, ListView虽然在展现List方面很方便很现成,但是Li...

2015-03-08 17:44:10

阅读数 429

评论数 0

原创 Tab 模块 (三)

Tab 模块 (三) TabContainer作为一层layout的存在有些浪费的,是当时应急为了实现调整tabViewList的gravity而作为layout添加的. TabContainer完全可以作为TabMenu的一部分或者一个组件存在. TabContainer逻辑上也是一个中...

2015-03-07 14:22:37

阅读数 399

评论数 0

原创 Tab 模块 (二)

Tab 模块 (二) 一个TabMenu也是由一组View组成的,因此 extends了LinearLayout, 而为了模拟拖拽某个TabView到tabMenu外,和TabMenu同一级 的还有一个用于代表托拽时的TabView 的辅助性View.平常不可见,只有在托拽某个TabView时,...

2015-03-06 17:36:26

阅读数 459

评论数 0

原创 Tab 模块 (一)

Tab 模块 (一) 做该模块的时间早于Download. MoveMenu extends FrameLayout, 可以响应手势或者按钮出现/消失. 提供了几种手势滑动方向,并且是可以set的并且在APP的setting中持久化. 手势滑动方向被enum化: UNDEFINED, L...

2015-03-06 13:59:32

阅读数 554

评论数 0

转载 Android postTranslate和preTranslate的理解

From: http://blog.csdn.net/rav009/article/details/7763223         matrix.setScale(interpolatedTime, interpolatedTime);         matrix.preTranslat...

2015-03-06 13:33:02

阅读数 305

评论数 0

原创 Download 项目总结

Download 项目总结. 每一层的View只监听自己感兴趣的event, 也基本只操作自己View内的直接子元素,当然不排除它进一步触发自己的View变化event,以及对自己内部的子view的操作。 一个event的影响流可以是 (1)挨个遍历 要影响的 V/M ,这样做的好处 每个V...

2015-03-05 15:17:28

阅读数 402

评论数 0

原创 Download模块 (二十)

Download模块 (二十) RemoteDownloadProvider 和 之前的localDownloadProvider一样,实现了同样的接口,负责提供网盘转存模式下的UI提供与展示以及对交互逻辑的封装。 和local一样,网盘当前已经转存的资源和正在转存的任务 都对应着一个内存中的...

2015-03-04 22:35:58

阅读数 277

评论数 0

原创 Download模块 (十九)

Download模块 (十七) AuthDialog extends DialogFragment, 有一个webview显示一个login网页,并且会监听login 成功/失败的event,并将event进一步扩散。 对webview的监听是通过WebViewClient和WebChrome...

2015-03-04 17:05:44

阅读数 370

评论数 0

转载 What's the difference between windowBackground and background for activities style?

What's the difference between windowBackground and background for activities style? From: http://stackoverflow.com/questions/14425868/whats-t...

2015-03-04 15:59:54

阅读数 368

评论数 0

原创 Download模块 (十八)

Download模块 (十七) RemoteDownload类继承自Download,反应一类比较特殊的Download, 即将资源转存至网盘。 这种情况下不会发生本地的IO交互。 event的触发都是由网盘提供的API负责。 网盘会为本次的转存任务分配一个ID,因此要增加一个Rid。 不可以...

2015-03-04 15:35:18

阅读数 360

评论数 0

原创 Download模块 (十七)

Download模块 (十七) DownloadProxy是和DownloadService配对存在的,负责维护mainActivity和downloadService的通信交互。 DownloadProxy不是一构造就立刻启动DownloadService,而是将启动Service放在一个i...

2015-03-03 18:33:30

阅读数 308

评论数 0

原创 Download模块 (十六)

Download模块 (十六) Notification类算是一个比较独立的模块以及一个工具性的C+V角色 比较好>。 所有方法都是static的,类实际搞成一个static的都可以。或者单例模式。 构造函数直接private Notification内部没有实现什么listener,设计...

2015-03-03 16:28:12

阅读数 351

评论数 0

原创 Download模块 (十五)

Download模块 (十五) DownloadInfo实现了Parcelable, 顾名思义,封装了一个Download的所有必要信息,信息足够使接收端构造出合乎发送端需求的DownloadTask。 并且Info在接收端也会承载起M的角色,所有也会有一些setter来更新其信息。 实现了P...

2015-03-03 15:05:48

阅读数 356

评论数 0

原创 Download模块 (十四)

Download模块 (十四) DownloadThread extends thread, 承载了真正通过http下载数据的任务。 Thread的一个问题是,其他thread对thread其实没有完全的控制权, interrupt方法只是改变一个flag,只有在Thread 的run的inte...

2015-03-03 13:42:07

阅读数 353

评论数 0

原创 Download模块 (十三)

Download模块 (十三) DownloadTask类封装了一次下载任务的全部信息 以及 真正下载的实现 DownloadTask接收DownloadInfo作为构造参数,并且内部维护一个指向其的引用,作为一个组成部件。 DownloadTask有状态,使用enum类实现: NOT_S...

2015-03-02 16:57:04

阅读数 544

评论数 0

提示
确定要删除当前文章?
取消 删除