- 博客(15)
- 资源 (11)
- 收藏
- 关注
原创 Android项目组件化架构
前言用android studio开发的同学应该都知道,androidstudio的架构是project-module形式,也就可以理解为一个项目由多个模块组成。在刚接触android studio时,它的这种架构引出了我一个想法------我们的app也可以使用这样的架构,一个app由多个模块组成,各个模块在自己的module包里。例如我有一个资讯类app,有几大模块:首页、视频、我,那
2017-09-27 09:38:45
5312
2
原创 android点赞效果--LikeView
一个点赞效果的view,动画效果可以飞出父view。例如listview中使用,可以飞出当前itemview。有两种效果,一种是可以取消点赞的,如上面左图,一种是不可以取消点赞的,如上面右图。使用1、gradle引入compile 'com.zhuang:likeview:1.0'2、xml使用<com.zhuang.likeviewlibrary.Li
2017-09-18 15:54:06
5339
3
原创 android图片:多选相册的实现
上一篇文章简单介绍了图片的加载,但是实际业务中,加载图片的需求会比这复杂得多,例如这篇博客要讲的多选相册的实现,会涉及到下面几个问题: 1、 取得图片路径:这里涉及到contentprovider,不是本文重点,这里只提供代码,不做详细解释。 2、 耗时操作:相册图片的读取是从硬盘读取的,这是一个耗时操作,不能直接在ui主线程操作,应该另起线程,可以使用AsyncTask来加载
2015-09-22 16:25:25
13933
原创 android图片:高效加载大图
图片有各种大小和形状,很多时候我们要显示的图片的分辨率大小远大于手机屏幕的分辨率,这时候我们通常是先对图片做压缩再加载到内存显示,因为一方面原图占用太多内存,容易导致OOM,另一方面,只要压缩适当,压缩后的图片在手机上的显示效果和原图没太大差别,手机分辨率就这么多,你原图分辨率再高,显示在手机屏幕上,也超不过其最大分辨率,视觉上看起来效果一样,占用的内存却大大不一样。 BitmapFact
2015-09-17 14:58:40
737
原创 Extjs5.1(10):Form加载复杂Json
1、最简单的方式。 如果加载的json数据格式类似于下面这种格式:{ "success":true, "data":{ "name":"zhuangweihuang", "age":25, "email":"1234567@qq.com" }}那么form表单加载起来是最简单的。注意一下这个json格式,首先,必需要的字段是“succes
2015-03-18 16:17:02
1887
原创 Extjs5.1(9):Grid组件
Extjs5.1正式版已经出来一段时间了,为了与时俱进,从这篇文章开始,使用Extjs5.1,所以标题也变成“Extjs5.1××××××”。 这篇文章讲Grid组件,先搭建好环境。我把Extjs5.1需要用到的库文件整理到ext文件中,如果想按照这篇文章一步一步来做这个例子的话,点击这里下载,然后根据下面的步骤搭建环境。如果不想一步一步做的话,可以不用下载,文章最后我会提供完整的源码
2015-02-03 13:06:47
1961
5
原创 Extjs5.0(8):Panel组件
Panel很简单,以至于我不知道如何开始这篇文章,直接上代码吧。 1、BasicPanel 上一篇文章我们已经在view包中创建了一个panel包,还建了一个BasicPanels.js文件,我们这里直接使用这个BasicPanels.js,在里面添加几个基本的panel.BasicPanels.js:Ext.define('MyApp.view.panel.Basic
2015-01-27 15:01:01
2004
原创 Extjs5.0(7):根据路由跳转页面
上一篇博客我们已经响应了路由器的跳转,但是还没有实现具体的跳转,这里继续此功能:点击左侧导航栏,触发路由跳转,根据路由跳转地址,页面做相应改变。目前为止我们差最后一步:页面做相应改变。在实现这个功能之前,我们先做一件事,就是把右侧内容区域单独出来。在view/main目录下,新创建ContentPanel.jsExt.define('MyApp.view.main.ContentP
2015-01-22 09:10:57
7348
4
原创 Extjs5.0(6):控制器(Controller、ViewController)和路由器(Router)
控制器 上一篇文章我们已经为项目添加了左侧导航栏,接下来要为导航栏添加点击事件,点击左侧导航栏,右侧界面出现相应变化。 为组件添加事件,就要用到控制器了。Extjs5提供了两种控制器:Controller和ViewController,这两种控制器都继承自BaseController。从功能上来讲,两者的大多数功能都是一致的,也就是说,在不严格区分的情况下,这两者选哪个都能用。从作
2015-01-13 09:52:47
8100
1
原创 Extjs5.0(5):为项目添加左侧导航栏(treepanel)
上一篇文章我们已经为项目添加了header,接下来修改左侧导航栏为树(treepanel)。View/main目录下建立Navigation.jsExt.define('MyApp.view.main.Navigation', { extend: 'Ext.tree.Panel',//继承treepanel xtype: 'app-navigation',
2015-01-06 11:21:38
6926
原创 Extjs5.0(4):开始正式的编写Extjs5.0代码
在编写代码之前,先熟悉一下我们上一篇文章中介绍的用sencha cmd生成的项目的目录结构。.sencha/ # sencha特定的主要配置文件 app/ # 应用特定的内容 sencha.cfg # Sencha Cmd配置 Boot.
2015-01-04 10:52:24
2580
原创 Extjs5.0(3):利用官方工具搭建MVVM架构项目
自动搭建Extjs项目需要下载以下软件:1、 java环境,需要jdk1.7及以上或jre1.7及以上,怎么配置java环境,网上很多教程,这里就不再介绍了。2、 下载sencha cmd,可以去官网下载,http://www.sencha.com/products/sencha-cmd/download/也可以下载我上传在csdn的资源(windows版)。官网下载时,选择对应的操作
2014-12-29 10:29:16
2696
原创 Extjs5.0(2):手动搭建MVVM架构项目
搭建项目前,要先下载extjs5.0的sdk包。由于sdk包比较大,不能一次性上传,我分成两个包Extjs5.0(1)和Extjs5.0(2),下载完这两个包之后,解压,放在同一个文件夹里面,可以命名为Extjs5.0。最后Extjs5.0文件夹下完整的目录如下:构建项目需要用到Extjs5.0包的以下文件:Extjs5.0\build\ bootstrap.jsExtjs
2014-12-22 15:29:26
4843
1
原创 Extjs5.0(1):简单暴力地窥视Extjs5.0的真容
虽然Extjs5.1 beta版已经出来了,但是我们这里还是使用5.0版本,因为用5.1建立的项目,会有”beta”水印,非常不爽。废话不多说,开始简单暴力的窥视Extjs5.0的真容。随便在硬盘上找一个地方,建立文件夹,这里命名为”test”吧。打开test文件夹,新建index.html文件(怎么建,不用我说吧),输入以下代码: Welcome to E
2014-12-18 16:41:29
2316
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人