- 博客(276)
- 收藏
- 关注
原创 LitePal的用法
喷泉的高度不会超过它的源头;一个人的事业也是这样,他的成就绝不会超过自己的信念。—— 林 肯本讲内容:LitePal的用法一、步骤1、把jar包复制到项目的libs目录中2、配置litepal.xml接着在项目的assets目录下面新建一个litepal.xml文件,并将以下代码拷贝进去:
2016-01-14 13:14:06
191
原创 Bmob之个人资料设置(三)
比别人多一点执着,你就会创造奇迹。 本讲内容:会话页面编写 1、实现轮播广告效果参考文章 http://blog.youkuaiyun.com/liguojin1230/article/details/50158769 2、GridView控件编写 下面是MyGridView.java文件:public class MyGridView extends
2015-12-22 21:18:55
664
1
原创 微信开发平台(一)
本讲内容:微信开发平台(一) 一、注册开发帐号并申请一个开发APP(申请中填写的包名必须和程序包名一样) https://open.weixin.qq.com/
2015-12-22 21:13:56
685
原创 常用工具类
本讲内容:常用工具类(陆续更新)1、全局获取Context的技巧/** * 自定义全局Applcation类(全局获取Context的技巧) * @author Administrator * */public class CustomApplication extends Application { public static Context contex
2015-12-17 20:51:31
315
原创 Bmob之个人资料设置(二)
比别人多一点执着,你就会创造奇迹。 本讲内容:Bmob之个人资料设置 下面是manifest.xml 文件:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.imdemo" android:versionCode="1" android:v
2015-12-17 20:47:16
591
原创 Android开发中退出程序几种方法
1、Activity.finish()当你调用此方法的时候,系统只是将最上面的Activity移出了栈,并没有及时的调用onDestory()方法,其占用的资源也没有被及时释放。因为移出了栈,所以当你点击手机上面的“back”按键的时候,也不会再找到这个Activity。2、Activity.onDestory()系统销毁了这个Activity的实例在内存中占据的空间。
2015-12-17 19:13:50
342
原创 自定义标题栏控件
本讲内容:自定义标题栏控件下面是HeaderLayout.java自定义头部布局文件:/** * 自定义头部控件 */public class HeaderLayout extends LinearLayout { private LayoutInflater mInflater; private View mHeader; // HeaderView控件左侧容
2015-12-15 22:02:40
173
原创 activity 去掉标题栏
本讲内容:activity 去掉标题栏1、在代码中设置requestWindowFeature(Window.FEATURE_NO_TITLE);注意放在你的Activity里的setContentView之前即可2、values-v11和values-v14中设置@android:style/Theme.Light.NoTitleBar">
2015-12-14 23:08:29
324
原创 Android之ViewPager实现轮播广告效果的自定义View
生活不可能像你想的那么美好,但也不会像你想的那么糟。本讲内容:实现轮播广告效果 下面是res/layout/show_view.xml 布局文件:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_pa
2015-12-12 22:11:40
740
原创 Android之RecyclerView
本讲内容:RecyclerView控件一、RecyclerView控件概述该控件用于在有限的窗口中展示大量数据集,例如:ListView、GridView。1、可以通过布局管理器LayoutManager控制其显示的方式2、可以通过ItemDecoration控制Item间的间隔3、可以通过ItemAnimator控制Item增删的动画示例一:下面是
2015-12-12 22:09:54
409
原创 Android之zxing二维码
人的活动如果没有理想的鼓舞,就会变得空虚而渺小。本讲内容:二维码一、zxing简介:zxing是一个开放源码的,zxing可以实现使用手机的内置的摄像头完成条形码和二维码的扫描与解码。二、Android上zxing的使用(二种方法):1.将zxing的jar包放到工程的lib库中,然后将com.mining.app.zxing.camera,
2015-12-11 23:12:36
621
原创 ScheduledExecutorService定时周期执行指定的任务
自己打败自己是最可悲的失败,自己战胜自己是最可贵的胜利。本讲内容:ScheduledExecutorService定时周期执行指定的任务一、由于Timer管理延时任务存在缺陷,因为Timer在执行定时任务时只会创建一个线程,所以如果存在多个任务,且任务时间过长,超过了两个任务的间隔时间,会发生一些缺陷:http://blog.youkuaiyun.com/lmj62356579
2015-12-03 13:48:38
709
原创 MySQL(一)
乐观者在灾祸中看到机会;悲观者在机会中看到灾祸。本讲内容:MySQL一、基础知识1、启动和停止MySQL服务方法1:运行--控件面版--管理工具--服务方法2:命令行net start mysql2、MySQL登陆mysql -uroot -pjin1230 -P3306 如果我们不想被别人知道密码可以先不写,按回车后再输入
2015-10-25 18:20:41
183
原创 使用mob实现注册验证码
激情,这是鼓满船帆的风。风有时会把船帆吹断;但没有风,帆船就不能航行。本讲内容:使用mob实现注册验证码一、注册验证码步骤:第一步 :从mob官网下载获取SDK其中“SMSSDK”目录存放的是短信SDK的全部内容,“SMSSDKSample”中保存了短信SDK的演示项目代码,而“SMSSDKSample.apk”则是“SMSS
2015-10-25 12:02:22
581
原创 回调接口
当你快乐时,你要想,这快乐不是永恒的。当你痛苦时,你要想,这痛苦也不是永恒的。本讲内容:回调接口详解假设你公司的总经理出差前需要你帮他办件事情,这件事情你需要花些时间去做,这时候总经理肯定不能守着你做完再出差吧,于是就他告诉你他的手机号码叫你如果事情办完了你就打电话告诉他一声。//该类用来模拟总经理 public class Manager {
2015-09-26 00:31:23
402
原创 观察者模式
命运,你残忍的诉说着我的悲痛。本讲内容: 观察者模式概念:观察者模式定义了对象之间的一对多依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。通俗理解:观察者模式=出版者+订阅者观察者模式如同订报纸,只是名称不太一样,出版者改称为“主题(Subject)”,订阅者改称为“观察者(Observer)”。
2015-09-25 22:39:23
96
原创 将应用发布到Google Play(六)
不经巨大的困难,不会有伟大的事业。本讲内容:将应用发布到Google Play1、生成一个带有正式签名的APK文件 注意:Android签名打包,如果出现报错可以在出错的地方,CTRL+1。 选择check file only。首先点击CoolWeather项目--Android Tools--Export Signed Application Pa
2015-09-25 15:35:51
1341
原创 进入实战,开发酷欧天气(五)
把你的脸迎向阳光,那就不会有阴影。 本讲内容:后台自动更新天气加入后台自动更新天气,这样可以迟可能地保证用户每次打开软件时看到的都是最新的天气信息。要想实现上述功能,就需要创建一个长期在后台运行的定时任务。下面是AutoUpdateService.java文件public class AutoUpdateService extends Service { publi
2015-09-24 21:40:20
944
原创 进入实战,开发酷欧天气(四)
流过泪的眼睛更明亮,滴过血的心灵更坚强! 本讲内容:显示天气信息服务器返回的天气数据来决定布局{"weatherinfo":{"city":"昆山","cityid":"101190404","temp1":"20℃","temp2":"11℃","weather":"小雨","img1":"d7.gif","img2":"n7.gif","ptime":"08:0
2015-09-24 20:46:37
2213
1
原创 进入实战,开发酷欧天气(三)
目标的坚定是性格中最必要的力量源泉之一,也是成功的利器之一。本讲内容:遍历全国省市县数据 1、全国所有省市县的数据都是从服务器端获取到的,因此这里和服务器的交互不可少的,所以在util包下增加一个HttpUtil类,代码如下:public class HttpUtil { public static void sendHttpRequest(final St
2015-09-24 19:24:50
1407
原创 进入实战,开发酷欧天气(二)
比别人多一点志气,你就会多一份出息。本讲内容:创建数据库和表一、项目结构如图:1、建立三张表,Province、City、County,分别存放省、市、县的各种数据信息。在db包下新建一个CoolWeatherOpenHelper类,代码如下:public class CoolWeatherOpenHelper extends SQLiteO
2015-09-24 16:10:11
1221
原创 进入实战,开发酷欧天气(一)
只有千锤百炼,才能成为好钢。本讲内容:开发酷欧天气一、进入实战,这次我们把酷欧天气的代码托管到GitHub上面GitHub的官网地址:https://github.com/1、点击右下角的New repository按钮来创建一个版本库,这里将版本库命名为coolweather,然后选择添加一个Android项目类型的.gitignore文件,并使用
2015-09-24 16:09:41
1999
原创 Android屏幕适配
用脑思考,用心琢磨,用行动证实。本讲内容:Android屏幕适配一、下图是2014年友盟统计的占比5%以上的6个主流分辨率,可以看出,占比最高的是480*800,中高分辨率的比例则在不断地增加。所以我们只要适配这几种分辨率,就可以在大部分的手机上正常运行了。当然了,这只是手机的适配,对于平板设备(电视也可以看做是平板),我们还需要一些其他的处理。
2015-09-23 10:48:19
462
原创 网络通信框架——Volley(一)
成功的信念在人脑中的作用就如闹钟,会在你需要时将你唤醒。本讲内容:网络通信框架——Volley一、Volley介绍由于HTTP的通信操作太过于复杂,于是在2013年Google I/O大会上推出了一个新的网络通信框架——Volley。Volley适合去进行数据量不大,但通信频繁的网络操作。示例一:发起一条HTTP请求,然后接收HTTP响应使用
2015-09-09 19:42:34
461
原创 网络通信框架——Volley(二)
在人生舞台上,从不给落伍者颁发奖牌。本讲内容:Volley提供三种方式来加载网络图片1、ImageRequest的用法ImageRequest与StringRequest和JsonRequest类似,都是继承自Request的。步骤都是:1. 创建一个RequestQueue对象。2. 创建一个Request对象。3. 将Request对象添
2015-09-09 13:55:47
85
原创 Android官方提供的支持不同屏幕大小的全部方法
生活就像海洋,只有意志坚强的人,才能到达彼岸。本讲内容:支持不同屏幕大小的方法让应用自动适配多个分辨率的屏幕,譬如对页面的调整。布局中尽量使用wrapcontent 、match_parent,尽量避免具体的数字,由系统来计算合适的宽高,为每个分辨率写一套布局文件,设置对应分辨率下控件的宽高。一、使用限定符现在很多的平板应用都采用的是双页模式(程
2015-07-08 15:26:28
110
原创 巧用dimens适配多个分辨率
成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成。本讲内容:使用dimens适配多个分辨率让应用自动适配多个分辨率的屏幕,譬如对页面的调整。注意:布局中尽量使用wrapcontent 、match_parent,尽量避免具体的数字,由系统来计算合适的宽高;或者为每个分辨率写一套布局文件,设置对应分辨率下控件的宽高。但是为每一
2015-07-07 14:03:06
141
原创 高效加载图片(下)
人生如天气,可预料,但往往出乎意料。本讲内容:DiskLruCache 硬盘缓存上一讲学习了LruCache内存缓存,但LruCache只是管理了内存中图片的存储与释放,如果图片从内存中被移除的话,那么又需要从网络上重新加载一次图片,这显然非常耗时。对此,Google又提供了一套硬盘缓存的解决方案:一、DiskLruCache DiskLruCa
2015-07-06 12:21:03
421
原创 高效加载图片(上)
如果要挖井,就要挖到水出为止。本讲内容:高效加载图片一、加载分辨率高的大图片我们在编写Android程序的时候经常要用到许多图片,一般这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。当我们读取一个Bitmap图片的时候,注意不要去加载不需要的分辨率。譬如在一个很小的
2015-07-05 14:19:36
527
原创 合理管理内存
人生如天气,可预料,但往往出乎意料。本讲内容:合理管理内存虽然Android系统的虚拟机拥有自动回收垃圾的机制,但并不代表我们就可以忽视应该在什么时候分配和释放内存。为了使垃圾回收器可以正常释放程序所占用的内存,在编写代码的时候就一定要注意尽量避免出现内存泄漏的情况(通常都是由于全局成员变量持有对象引用所导致的),并且在适当的时候去释放对象引用。如果一个对象的引用不再被
2015-07-05 12:20:45
79
原创 使用百度地图(下)
命运如同手中的掌纹,无论多曲折,终掌握在自己手中。本讲内容:使用百度地图示例一:自定义定位图标并使用方向传感器1、自定义定位图标使用MyLocationConfigeration配置类来自定义定位图标,MyLocationConfigeration 构造器有3个参数:第一个参数 mode:定位图层显示方式, 默认为 LocationMode.NORMAL
2015-07-03 22:33:51
461
原创 Git版本控制工具与GitHub的使用
现代社会已不是大鱼吃小鱼的年代,而是快鱼吃慢鱼的年代。 本讲内容:Git版本控制工具作为一个程序员,肯定需要有一个自己的服务器,然后将一些重要数据备份在服务器中。如果是需要和朋友共同开发,那服务器更是不可或缺。但是一般我们都不会去买一个服务器。但是我们可以使用开源的Git版本控制工具。一、安装Git访问http://msysgit.github.io/ 把G
2015-07-02 17:12:44
740
原创 编写测试用例
成功是一种观念,致富是一种义务,快乐是一种权力。 本讲内容:测试用例测试用例通常是带有期望的运行结果的程序代码,测试者可以根据最终的运行结果来判断程序是否正常工作。一、测试用例的好处譬如你正在维护一个很庞大的工程,里面有许多的功能,某天,根据需求你对其中一个功能进行修改,几天后,突然有人发现其他功能出现了问题,最终定位出来的原因是你之前修改的那个功能所导致的。所
2015-07-01 21:32:33
717
原创 全局获取Context的技巧
因为年轻我们一无所有,也正因为年轻我们将拥有一切。本讲内容:获取Context很多操作都是在活动中进行的,而活动本身就是一个Context对象。但是,当应用程序的架构逐渐复杂起来的时候,很多的逻辑代码都将脱离Activity类,但此时我们需要使用Context。下面介绍一种技巧,让你在项目的任何地方都能轻松获取到Context.Android提供了一个Applica
2015-07-01 13:15:48
819
原创 使用百度地图(上)
人生没有理想,生命便只是一堆空架子。本讲内容:使用百度地图1、创建应用创建应用地址:http://lbsyun.baidu.com/apiconsole/key/create安全码是由数字签名+;+包名组成。数字签名指的是我们打包程序时所用keystore的SHAL指纹,可以在Eclipse中查看。点击导航栏的Window--Preferences-
2015-06-28 20:55:27
669
原创 滑动菜单
使人疲惫的不是远方的高山,而是鞋里的一粒沙子。本讲内容:滑动菜单示例一: 下面是res/layout/left_menu.xml 布局文件:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_
2015-06-26 19:01:45
418
原创 Android之属性动画(二)
面对困境,悲观的人因为往往只看到事情消极一面。本讲内容:属性动画一、示例一:二、ObjectAnimator的高级用法ObjectAnimator内部的工作机制是通过寻找特定属性的get和set方法,然后通过方法不断地对值进行改变,从而实现动画效果的。因此我们就需要在MyAnimView中定义一个color属性,并提供它的get和se
2015-06-24 09:26:48
491
原创 解析JSON格式数据
别想一下造出大海,必须先由小河川开始。本讲内容:解析JSON格式数据1)比起XML,JSON的主要优势在于它的体积更小,在网络上传输的时候可以更省流量。但缺点在于,它的语义性较差,看起来不如XML直观。2)解析JSON格式的数据有多种方式,常用的两种是:使用官方提供的JSONObject和谷歌的开源库GSON。示例一:解析服务器返回的数据一、JSON
2015-06-18 17:17:02
974
原创 解析XML格式数据
滴水穿石不是靠力,而是因为不舍昼夜。本讲内容:解析XML格式数据解析XML格式的数据有多种方式,常用的两种是:Pull解析和SAX解析。示例一:解析服务器返回的数据下面是通过apache服务器生成get_data.xml文件。一、Pull解析方式步骤:1、获取一个XmlPullParserFactory实例XmlPullPar
2015-06-18 15:00:52
587
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人