7 whuczh

尚未进行身份认证

擅长andorid开发,有java web和native开发经历

等级
TA的排名 10w+

AndroidStudio模板简介

AndroidStudio模板简介概述很多时候Android开发者会觉得每天都在敲一些重复的代码非常枯燥。findViewById、setVisibility、判断是否为空、instanceof、for循环、intent跳转,看到这些东西就想吐了有木有!还好AndroidStudio给开发者提供了一套机制,让我们不需要一字一句的重复敲打这些代码,这就是模板。顾名思义,模板就是事先制定一些规则,我们只

2017-09-04 00:35:12

Android文件存储

Android文件存储Android文件存储概要独立文件专属文件internalstorageexternalstorage结束语概要当我们查看手机的文件管理器的时候,会发现里面的文件五花八门,我们想要找到自己项目所对应的文件非常困难,甚至有可能压根就找不到自己的文件,本文就来介绍一下APP开发过程当中文件存储的注意事项。通常我们会将存放的文件分为两种:独立文件和专属文件。顾名

2017-09-02 02:41:52

web服务器搭建之百度BAE

准确的说,BAE并不是一个完整的服务器,它只是一个项目部署的平台,我们可以将自己做好的web项目部署到BAE上,并绑定一条域名,这样别人通过这个域名就可以访问我们的项目了.下面以java-tomcat项目为例,介绍一下部署的流程:1.搜索百度开放云,注册|登录.2.登录后在右下角找到百度BAE基础版,如图所示:3.进入后,选择空应用(这里可能需要实名认证,认证过程就不讲了),填写要部署的

2016-04-16 15:58:07

web服务器搭建之ngrok篇

ngrok介绍许多刚学javaweb的同学(包括我自己)肯定都非常好奇,如何在外网上访问自己做的项目,跟我们本地访问tomcat有什么区别?今天就向大家介绍一个非常强大的外网映射工具:ngrok.ngrok可以把你的本地ip(127.0.0.1|localhost)映射成一个公网域名,这样所有人都可以通过这个域名来访问你的项目,这个功能对本地调试,特别是微信公众号开发带来了极大的便利.示例:h

2016-04-16 15:28:59

关于k小的实现及优化(c)

在线性规划中有一个经典案例就是求中项及第k小的值

2016-03-14 20:20:31

各种排序算法(c)及时间复杂度分析

各种排序算法(c)及时间复杂度分析本篇主要整理一些常用的排序算法:直接插入排序、希尔排序(分组插入)、直接选择排序、冒泡排序、快速排序、归并排序、堆排序.插入排序(直接插入,希尔)选择排序(直接选择)交换排序(冒泡,快排)归并排序堆排序编译平台:VS2010直接插入排序#include"stdafx.h"int_tmain(intargc,_TCHAR*argv[]){

2016-03-13 22:39:21

记JAVA的二三事(4)——线程的同步和互斥

概念线程互斥的概念:当有多个线程(窗口)要访问同一个资源时(火车票),如果多个线程同时对该资源进行读和写操作,A窗口读取到剩余100张火车票,卖出一张,剩下99张,将剩余票数写入数据库。因为是同时进行,B窗口也读取到剩余100张火车票,卖出一张,剩下99张。此时数据库中显示火车票剩下99张。但是实际上卖掉两张火车票后应该只剩下98张火车票。显然多个线程不能同时访问一个资源,此时就引入了互

2015-12-31 18:22:58

markDown使用测试

第一次使用markDown编辑器,这是一篇测试博客。测试一列表无序列表无序列表2测试二表格测试三脚注测试四字体斜体粗体测试五代码块测试六图片测试七链接csdn之前使用html编辑器,感觉编辑时的很多效果在编辑完成后查看时都消失了,所以换一种模式试试。”#表示标题,#数目越多层级越小(根据#来建立目录)“测试一:列表无序列表水果苹果香蕉蔬菜青菜黑木耳番茄

2015-12-30 15:03:30

记JAVA的二三事(3)——基本数据类型

1.基本数据类型:四个整型(byte,short,int,long);二个浮点型(float,double);一个字符型(char);一个布尔型(boolean) 位数有无符号位最小值最大值默认值byte8有-1281270short16有-2^152^15-10int

2015-12-30 10:40:51

记JAVA的二三事(2)——JVM存储区+hashCode()和equals()的隐式约定

1.JAVA虚拟机存储空间分布图:    常量池是一个与Heap和Stack并列的存储区,存在于MethodArea中。常量池存放字符串常量和基本数据类型常量。如果一个字符串在编译期已经创建好("")则存储在常量池中,如果是运行期(new)才能确定的则存储在堆中。堆中存放运行时的对象。栈中存放对象的引用、基本数据类型的变量以及运行时的方法。2.hashCode()和e

2015-12-27 09:19:20

记JAVA的二三事(1)——"==","引用"

1.JAVA内存存储的六种类型:寄存器,栈,堆,静态存储,常量存储,非RAM存储区2.区分对象和对象引用的概念:Stringa=newString("abc");左边是对象引用,右边是一个新建对象。新建对象存储于堆内存中,对象引用一般存储于栈内存中。3.“==”符号:对于基本数据类型而言(int,float,double,long...),是比较值是否相同;对于复杂数据类型

2015-12-26 19:00:02

ScrollView嵌套ListView问题:如何让ListView随着ScrollView一起滚动

如题,Android滚动控件有个规律:一个父滚动控件嵌套了一个子滚动控件,当手指在两个控件重叠部分滑动时,会优先触发子控件的滚动属性。那么如何只触发父控件的滚动属性而不触发子控件的滚动属性?很简单,只要让整个ListView在父布局中显示出来就好了。假设父布局是一个不会滚动的控件(如RelativeLayout),当ListView在父布局中完全显示时(限制是这个ListView高度小于屏幕高度)

2015-12-22 08:42:28

圆形自定义ImageView的简单制作

很多微博,社交APP的个人资料里面的人物头像都是圆形的。有两种办法,一种是图片本身是圆形的,另一种则是ImageView在绘制图片时将图片裁剪成了圆形。第一种做法没什么好说的,来看看第二种是如何做到的。在网上看了一下相关代码,发现很多都挺复杂的,各种情况的考虑以及自定义属性等等,我在这里将核心代码提炼了一下,归结出一套比较简单的写法,思路很清晰,适合新手学习。既然是自定义圆形ImageVi

2015-12-21 16:28:29

如何在ListView中点击item控制item中的控件变化(ExpandableListView篇)

之前一篇讲了在ListView中如何在点击item时改变item中的控件状态,并且也讲了如何消除item布局复用带来的负面效果。这一篇就讲讲ListView的进阶版ExpandableListView。先上效果图和代码:

2015-12-21 14:19:09

如何在ListView中点击item控制item中的控件变化(ListView篇)

ListView一直是Android里的一大难题,之前一段时间做项目碰到一个需求:点击item后控制item中的ImageView显示正在播放的图片,其他item中的imageView则都显示未播放的图片。下面给出一个例子来实现这种效果。首先看下最后的效果图:要实现这个需求有两个难点:1.如何获取item中的控件2.如何避免item布局复用带来的负面效果先抛开第二点不谈,看看

2015-12-20 12:59:55

十个非常实用的开源个性化滚动View控件(eclipse篇)

之前在imooc上看到一篇分享功能各异的滚动View控件的文章,觉得挺有意思的,转载一波。eclipse上的demo:1.PinnedHeaderExpandableListViewAndroid中,大家都用过ListView,ExpandableListView等,也许你还用过PinnedHeaderListView,但是如果我说PinnedHeaderExpandabl

2015-12-12 16:12:40

android框架搭建——封装一个属于自己的数据存储工具类(SQLite篇)

当我们缓存本地的数据存在一对多(一个name对应多个values)的情况时,sharedPreferences已经无法胜任存储的工作了。此时我们需要使用SQLite来进行本地缓存。直接使用SQlite进行存储时,每次执行插入,查询,删除操作都要写一大堆代码,很麻烦,所以我们对SQLite进行一下简单的封装,下面给出例子:在这个例子中,我们要存储同学的姓名,年龄,指导老师,家庭地址,手机号等

2015-12-01 20:01:58

android框架搭建——封装一个属于自己的数据存储工具类(sharedPreferences篇)

之前的几篇博文中提到过封装网络工具类,那么在发送请求并获取一个JSONObject对象之后,如何便捷的进行json解析和数据存储便成了我们要考虑的问题,在此分享一下自己在使用了诸多工具之后的一点心得。首先是json解析,我推荐使用Gson自带的一个方法,一行代码就可以获取所有的数据并将数据存储进bean中,下面给出例子:这是一个很常见的接口返回数据,该接口的格式为{“retcode

2015-11-30 22:24:08

android框架搭建——二次封装Volley框架

上一篇博文中提到了自己写一个网络工具类,然而自己的能力明显有限,封装的工具类无论从功能还是性能上都比不上前辈大牛们已经完善好的网络框架,但是我们又想更加方便的使用大牛们的框架,怎么办呢?我们可以二次封装一下网上的网络框架,让它们使用起来更加的方便,这里以目前很流行的Volley为例:直接使用Volley的Get请求时的步骤:1.首先要创建一个全局的Volley队列,我们可以写一个MyApp

2015-11-29 15:40:35

android框架搭建——封装一个属于自己的网络工具类

之前使用AsyncHttpClient,Volley等网络框架,总觉得"占地面积"太大,比较理想的情况是用一两行代码就可以获取接口的数据,所以决定自己封装一个网络工具类。不多说,直接上代码;packagecom.xiaoteng.dms.utils;importjava.util.ArrayList;importjava.util.List;importorg.apache.

2015-11-28 17:02:47

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!