- 博客(33)
- 收藏
- 关注
原创 gin使用gzip压缩
gzip压缩是每个web应用必不可少的,这项目使用gin作为web框架,gin支持使用中间件,github上有实现好的gzip中间件:gin-contrib/gzip
2017-09-29 09:55:05
6474
原创 gogland跨平台编译
go支持跨平台编译,平时我们在mac或者windows上面开发,部署服务器的时候需要编译成linux的可执行文件,可以使用命令行进行跨平台编译,每次敲命令有点麻烦,gogland简单配置一下也可以实现跨平台编译。
2017-09-28 15:04:13
2425
原创 go编译静态文件
go在编译成二进制文件时并没有把我们的静态资源文件编译进去,如果我们开发的是web应用的话就需要想办法把我们的静态文件也打包进去,这里我们使用 go-bindata它可以把我们的静态文件生成 .go 文件,这样就可以编译成二进制文件,项目启动的时候再把这个 .go 文件再释放成静态文件
2017-09-27 13:02:11
2381
原创 android压缩图片
/*** 压缩图片** @param filePath 图片地址* @return 压缩后的bitmap*/private Bitmap file2Bitmap(String filePath) { BitmapFactory.Options opt = new BitmapFactory.Options(); //true只加载图片的高宽 opt.inJustD
2016-11-26 23:47:34
265
原创 Android获取应用的缓存路径
public static String getDiskCacheDir(Context mContext) { String cachePath; if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { cachePath = mContext.getExternal
2016-11-14 14:54:28
1460
原创 TabLayout禁止选择
项目中有个页面上面是TabLayout下面是Listview,选择TabLayout的选项卡更新下面Listview里面的数据,在请求的时候想禁用TabLayout选项卡来避免用户频繁点击选项卡造成Listview的数据错误。 如果只是调用TabLayout的setClickable方法是不起作用的,需要获取到每个选项卡的tabView然后再分别设置。LinearLayout tab
2016-10-31 15:10:08
8941
原创 解决AppTheme主题打开dialog出现黑条的问题
项目中使用了dialog样式的activity,更换了AppTheme主题后打开activity的时候上面总是有个黑边。 查看AppTheme的样式:<!-- Base application theme. --><style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="color
2016-10-17 14:14:36
1821
原创 webview通过js调用android方法
android 代码:@EActivity(R.layout.activity_webview)public class WebViewActivity extends Activity { @ViewById WebView wv_content; @AfterViews public void init() { //设置支持javascr
2015-01-16 10:25:11
446
原创 android压缩图片到指定尺寸
public static Bitmap zoomImage(Bitmap bgimage, double newWidth, double newHeight) { // 获取这个图片的宽和高 float width = bgimage.getWidth(); float height = bgimage.getHeight();
2014-10-12 15:12:51
908
使用gzip压缩extjs文件
突然奇想想用extjs4做一个外网项目,但是extjs4依赖的文件实在太大,光ext-all.js已经压缩后的都有1.2m,做外网的话速度非常的慢,为了提高速度可以用gzip对文件再进行压缩,最后可以让1.2m的文件压缩成300多k,这样就大大的节省的时间。 1:先使用gzip压缩文件(http://download.csdn.net/detail/chen2991...
2013-06-26 21:13:43
178
extjs4 ajax同步加载
平时我们用Ext.Ajax.request来跟后台进行交互,通过ajax使用的是异步的的方式来传递,但是有些情况需要用同步的方式来进行Ext.Ajax.request({ async : false,//添加上这个属性就能实现同步的方式 url: 'page.php', params: { id: 1 ...
2013-06-26 20:52:09
153
extjs4动态加载css文件
extjs4一个比较好的地方就是所有的文件都能动态的生成,比如通过requires可以动态的加载js文件,但是有些加载的控件同样需要加载css文件。extjs4同样也给我们提供了方法:Ext.util.CSS.swapStyleSheet('文件id', 'css文件路径');// 动态加载css文件 ...
2013-06-26 20:50:46
455
extjs4 TreePicker下拉树用法
项目中需要用下拉树来展示数据,到网上搜了下没有想要的东西,有些是自己写的下拉树,官方的api也没有treeCombobx这样的东西,但是在extjs4源码包里面却有一个叫treePicker的东西,这正是官方提供的下拉树,但是api里面也没有使用的例子。网上也没有相关的用法,没办法,只有自己看源码慢慢摸索,好在最后终于摸索出来了。{ xtype : 'treepi...
2013-05-24 21:28:15
413
extjs4 tree的右键菜单
在treePanel或者treeGrid控件上面注册itemcontextmenu事件就是右键菜单'#deptGrid' : { itemcontextmenu : me.deptGrid_itemcontextmenu } deptGrid_itemcontextmenu : function(his, record, item, ind...
2013-05-18 16:44:51
194
extjs4 treeGrid使用
项目有一个需求是展示一个部门信息,但是这个部门下面有可能还存在子部门,用一般的trrPanel感觉效果不是太好,在官方的api上面找到treeGrid控件正好可以满足需求,但是悲催的是把api里面的代码拷到程序里面后没有效果,根据反复的修改终于可以用了:Ext.define('SimpleTasks.view.organize.DeptGrid', { ...
2013-05-18 16:16:52
165
store.setExtraParam的用法
项目中需要在同一个grid中转换成不同的数据,不如有一个menu,里面有“未审核”和“已审核”两个按钮,需要点击按钮后grid中出现对应的信息,之前使用的方法是当点击按钮的时候动态的创建store,然后再调用grid.reconfigure(st);的方法把数据加载到grid里面。 今天突然想起了searchField源码里面的grid.setExtraPara...
2013-04-24 20:59:18
460
extjs4重写验证textfidld不能输入空格
在extjs4中的表单验证里面虽然能够通过allowBlank : false配置控件不能为空,但是如果在控件里面输入空格的话就很轻松的骗过了验证,这显然是不合理的,我想到的解决办法是通过重写TextField控件的验证器再加一个判断空格的验证:Ext.apply(Ext.form.TextField.prototype, { valida...
2013-04-17 21:25:17
490
解决重启tomcat后session依然有效的问题
如果用户页面没有关闭,重新启动tomcat后session依然有效,这样就会造成一个账号就能在两个地方同时登陆,给程序带来隐患。解决办法是在tomcat的context.xml文件里面添加:<Manager className="org.apache.catalina.session.PersistentManager" debug="0" saveOnRestart="fal...
2013-04-17 21:10:36
378
extjs4中htmlEncode与htmlDecode的用法
项目中有一个模块是用来管理前台的评论内容。因为前台的评论没有限制输入的内容所以有可能用户保存的是一段html代码。后台extjs4进行管理的时候如果用grid展示出来会把grid里面的布局弄乱,很不好看,这个时候就想在grid中展示评论内容的时候不要解析这个html代码,当文本一样的输出。在freemarker中只需要在展示的内容两边加上一对标签即可,所以感觉应该不是太难,不知道...
2013-04-16 21:21:31
291
在combobox中输入值自动补齐后名额的值
最近看extjs4的API发现combobox还有一个比较实用的功能,就是在combobox中输入比如"四川",就会自动查询当前下拉框中有的值并补齐成“四川省”,如果下拉框中的值很多的话这个方法还是比较实用。实用的方法也特别的简单,配置两个属性就行了:{ xtype : "combobox", store : sto...
2013-04-14 13:38:44
123
解决get提交乱码和mysql存数据是问号的问题
每次重装系统后重新配置环境后最容易碰到两种乱码的问题,就是get提交乱码和当保存数据到mysql里面时后台代码都没有乱码但是到mysql后中文全是问号。 get提交乱码的解决办法是点击eclipse左边的项目列表中的Servers->Tomcat v7.0 Server at localhost-config->server.xml文件中修改<C...
2013-04-13 11:56:34
159
extjs4自定义vtype验证开始时间不能大于结束时间
项目中需要开始时间和结束时间的验证。因为需求涉及到两个时间,所以要有验证开始时间不能大于结束时间。之前对extjs4了解不够深入,所以这个验证是放在后台来完成,然后在前台弹出一个alert来提示用户“开始时间不能大于结束时间”。这样做依然用户体验不好,不能输入完后马上就提示用户,而且还会发送没必要的请求增加服务器负担。多个字段的验证就能很好的解决这个问题。但是实现也要比单个字段的验证要复杂些,...
2013-04-10 21:46:08
152
extjs4自定义表单验证
extjs4自带的表单验证已经够强大了,但是有些特殊的要求还是无法满足,比如项目中的一个文本控件要求不能输入纯数字,这个需求普通的表单验证就不行了,好在extjs4提供了自定义vtype验证,通过正则表达式来判断,写法也非常的简单: Ext.apply(Ext.form.field.VTypes, { al : function(v) { ...
2013-04-09 22:58:35
127
extjs4实现从页面上方弹下提示框
项目中一边的提示框都是用alert完成,现在项目有一个需求是从页面的最上方降下来一个提示框,用户不需要任何操作,一定时间后自动再收上去。之前用了很多办法,效果都不是很好,结果官方例子里面有现成的解决方法。需要从extjs4的包中找到两个依赖的文件example.css和example.js,把他们放到项目中同一层目录下面,然后在html页面引用这两个文件。然后在项目中就可以使用Ext.exam...
2013-04-09 22:15:17
142
extjs4 me.container.dom is undefined的解决方法
在新创建的一个模块中代码都是从其他模块中拷贝过来的,代码应该没问题,在其他模块中都能运行,但是在新建的模块中window就会出问题,按着下面的操作顺序先打开window,然后关闭,再关闭装有这个模块的tab,然后再打开这个tab,再打开最初的那个window的时候firebug就会出现me.container.dom is undefine的错误,先找了很久都没有找到出问题的原因...
2013-04-08 23:27:44
137
用window实现类似Ext.msg.alert()效果
公司的项目没有使用ifram,所以整个项目就一张页面,导致当使用Ext.msg.alert()后会遮罩整个界面。如果我只想遮罩右边的tab而让左边的tree依然还能用的话就只有重写一个window来代替alert。然后自己再通过mask()方法来手工控制遮罩Ext.create('Ext.window.Window', { title : title, id : id,...
2013-04-08 23:08:37
134
extjs4中tree组件获取选中的节点
一个模块中由两部分组成,左边是一个tree组件,右边是一个grid,点击tree里面的节点时grid中列出相应的数据。其中最主要的就是怎么获得tree中当前选中的节点。 Ext.getCmp('tree的id').getSelectionModel().selected.items; 返回的是一个节点的数组,得到这个数组后我们就可以进行相应的操作了...
2013-04-08 22:04:00
542
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人