自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (2)
  • 收藏
  • 关注

原创 知乎日报客户端

进来闲着无事,仿照知乎官方App做了一个知乎日报客户端,直接上图先看看效果: 这里简单介绍下我的开发过程:首先获取App用到的各个接口API,这里我用了URL Snooper软件和Fiddler软件嗅探,同时参考了其他网友给出的API用到的知识点:Android Design库的使用MVP模式WebviewOKhttp封装框架的用法用Gson解析网络数据用Glide加载图片最后

2016-09-24 18:55:08 628

原创 Android网络应用

13.1基于TCP/IP协议的网络通讯TCP/IP通讯协议是一种可靠的网络协议,它在通信的两端各建立一个Socket,从而在通信的两端之间形成网络虚拟链路。一旦建立了虚拟的网路链路,两端的程序就可以通过虚拟链路进行通信。Java对基于TCP协议的网络通信提供了良好的封装,Java使用Socket对象来代表两端的通信接口,并通过Socket产生IO流来进行网络通信。13.1.1 TCP/IP协议基础T

2016-09-06 17:32:18 999

原创 精彩文章目录(持续更新)

1. Android开发细节知识点不要在Android的Application对象中缓存数据!在任意位置获取应用程序ContextAndroid 面试题总结之Android 进阶(一):View的基本介绍Android 面试题总结之Android 进阶(二):View的深入理解2. 面试相关史上最全 Android 面试资料集合3. 知名网站极客导航:一个程序员会用到的导航网站4.

2016-08-30 11:15:11 564

原创 【Android】四大组件之一:BroadcastReceiver

BroadcastReceiver是Android一个重要的组件,代表广播消息接收器,从代码实现角度来看,BroadcastReceiver非常类似于事件编程中的监听器。不过与普通事件监听器不同的是:普通事件监听器监听的事件源是程序中的对象,比如Button、TextView等各组件,而BroadcastReceiver监听的事件源是Android中的其他组件,比如WiFi、蓝牙、系统联系人等等组件

2016-08-17 17:33:49 609

转载 【Android】长按连续触发事件的实现方法

项目中需要实现一个类似购物车数量的小组件,需要单击时增加数量,长按时可以连续增大,之前的代码实现效果不理想,google后得到一个解决方法,测试可以完美实现。实现效果大致如图: 【原理说明】大致原理是,如果手指按在view上,则使用ScheduledExecutorService对象执行scheduleWithFixedDelay()方法,每隔一个间隔不停地向Handler发送Message,

2016-08-17 09:10:18 3878

原创 多线程通讯之Handler实现

在Android系统中,多线程之间传递消息我们可以用Handler来实现UI线程向子线程发送消息,子线程接收到消息后处理public class MainToWorkThreadActivity extends Activity { private Handler handler; private Button button1; @Override protected

2016-08-16 21:14:40 484

原创 Android ViewPager基本使用方法

这是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与LisstView类似,我们也需要一个适配器,他就是PagerAdapterViewPager的功能就是可以使视图滑动,就像Lanucher左右滑动那样。分三个步骤来使用它:1. 在布局文

2016-08-12 15:55:26 579

原创 Android应用资源

在Android层次结构中,资源扮演着非常重要的角色。在Android中,资源是绑定到可执行程序的文件或值。这些文件和值绑定到可执行程序的方式很友好,无需重新编译和重新部署应用程序就能更改他们。熟悉的资源包括:字符串,颜色和位图等Android应用下除了res目录用于存放资源文件之外,assets目录也用于存放资源,一般来说,assets目录下存放的资源代表应用无法直接访问的原生资源,应用程序需要通

2016-08-09 22:25:03 1846 2

原创 java.lang.outofmemoryerror permgen space

如下图,这两天调试一个程序的时候总是报内存溢出,找了好久终于找到解决办法了,现在记录在此,以防下次忘记解决办法 Try increasing the ram allocation for your JVM. It should help. Fix for eclipse: You can configure this in eclipse preference as follows

2016-08-08 17:05:22 361

原创 Realm数据库使用

介绍Realm是一个可以替代SQLite以及ORMlibraries的轻量级数据库。相比SQLite,Realm更快并且具有很多现代数据库的特性,比如支持JSON,流式api,数据变更通知,以及加密支持使用方法1. 添加Realm到工程要在安卓工程中使用Realm,你需要在module的build.gradle文件中添加一个添加一个依赖:compile 'io.realm:realm-android

2016-08-04 12:27:50 1954

原创 Delphi配置文件之单例模式

在Delphi开发中,我们经常会将程序中的一些配置写到ini配置文件中,为方便使用,这里使用单例模式是非常方便的:{***********************************************************}{ 单元名称: uSingletonConfig.pas{ 单元功用: 读取配置文件-单例模式{ 设计日期: 2015/07/20{ 设 计 者: gqp{

2016-08-03 15:24:28 652

原创 Java设计模式-单例模式

单例模式:顾名思义,即一个应用程序中只需要存在至多一个对象,比如Delphi和Android中的Application对象,为满足这个要求,我们设计如下代码:public class Singleton { private static Singleton uniqueInstance; // other useful instance variables here privat

2016-08-02 14:14:04 274

原创 Google官方下拉刷新组件SwipeRefreshLayout

一、问题描述在android开发中,使用最多的数据刷新方式就是下拉刷新了,而完成此功能我们使用最多的就是第三方的开源库PullToRefresh。现如今,google也忍不住推出了自己的下拉组件SwipeRefreshLayout,下面我们通过api文档和源码来分析学习如何使用SwipeRefreshLayout。SwipeRefreshLayout继承自ViewGroup,在support v4兼

2016-07-27 16:23:26 473

原创 Gson与Realm搭配使用碰到的问题

1. 继承RealmObject的类的属性都必须设置Getter和Setter,否则编译不通过,如下图:2. 继承RealmObject的类序列化和反序列化的时候需排除RealmObject中的属性,否则将因为类RealmObject涉及父子轮调,导致死循环解决办法: 使用ExclusionStrategy(排除策略)实现对类或者域的序列化排除,如下: public static void

2016-07-26 16:54:58 1605

转载 你真的会用Gson吗?Gson使用指南(四)

原文链接:http://www.jianshu.com/p/3108f1e44155该系列其它文章你真的会用Gson吗?Gson使用指南(一)你真的会用Gson吗?Gson使用指南(二)你真的会用Gson吗?Gson使用指南(三)你真的会用Gson吗?Gson使用指南(四)注:此系列基于Gson 2.4。本次文章的主要内容:TypeAdapterJsonSerializer与JsonD

2016-07-25 17:34:44 2189

转载 你真的会用Gson吗?Gson使用指南(三)

原文链接:http://www.jianshu.com/p/0e40a52c0063该系列其它文章你真的会用Gson吗?Gson使用指南(一)你真的会用Gson吗?Gson使用指南(二)你真的会用Gson吗?Gson使用指南(三)你真的会用Gson吗?Gson使用指南(四)注:此系列基于Gson 2.4。本次的主要内容:字段过滤的几种方法 基于@Expose注解基于版本基于访问修饰

2016-07-25 16:42:00 4634

转载 你真的会用Gson吗?Gson使用指南(二)

原文链接:http://www.jianshu.com/p/c88260adaf5e该系列其它文章你真的会用Gson吗?Gson使用指南(一)你真的会用Gson吗?Gson使用指南(二)你真的会用Gson吗?Gson使用指南(三)你真的会用Gson吗?Gson使用指南(四)注:此系列基于Gson 2.4。上一篇文章 你真的会用Gson吗?Gson使用指南(一) 我们了解了Gson的基础用法

2016-07-25 16:00:18 1553 1

转载 你真的会用Gson吗?Gson使用指南(一)

原文链接:http://www.jianshu.com/p/e740196225a4 JSON (官网) 是一种文本形式的数据交换格式,它比XML更轻量、比二进制容易阅读和编写,调式也更加方便。其重要性不言而喻。解析和生成的方式很多,Java中最常用的类库有:JSON-Java、Gson、Jackson、FastJson等。该系列其它文章你真的会用Gson吗?Gson使用指南(一)你真的会

2016-07-22 15:54:06 3896

转载 RecyclerView知识点串讲

RecyclerView 是Android L版本中新添加的一个用来取代ListView的SDK,它的灵活性与可替代性比listview更好。概述RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:ListView、GridView。那么

2016-07-21 14:49:10 526

原创 Android Studio调试设置的断点无效

真他娘的坑爹,今天调试一个程序,在一个Activity里面设置了断点,无论如何代码都不能在断点处停下来,查了一整天才发现原来是这个罪魁祸首解决办法解决办法有两种:第一种就是调试的时候将android:process=":remote"去掉,调试完毕的时候再给他加回去另外一种办法就是附加remote所在的进程进行调试:attach debugger to android process andro

2016-07-18 23:56:27 42586 9

原创 ListView和ViewHolder的结合使用

在android开发中Listview是一个很重要的组件,它以列表的形式根据数据的长自适应展示具体内容,用户可以自由的定义listview每一列的布局,使用ListView必须给他指定一个Adapter,这里我们使用BaseAdapter:在布局文件中定义一个ListView activity_main.xml <?xml version="1.0" encoding="utf-8"

2016-07-18 09:06:54 7912 1

原创 Volley获取Json数据异常

这两天用Volley加载网上数据碰到两个奇怪的问题,百思不得其解,现在还没弄明白为什么会出现这种问题,先记录在此:调用Volley方法StringRequest获取网页数据,调试的时候在某次添加断点运行异常,去掉断点则运行正常调用Volley方法JsonObjectRequest获取http://www.weather.com.cn/data/sk/101010100.html数据异常,但获取h

2016-07-15 01:04:22 967

原创 Delphi创建服务程序

Windows 2000/XP和2003等支持一种叫做”服务程序”的东西.程序作为服务启动有以下几个好处:不用登陆进系统即可运行.具有SYSTEM特权.所以你在进程管理器里面是无法结束它的.如何创建Service下面就介绍一下如何用Delphi7创建一个Service程序: 运行Delphi7,选择菜单File–>New–>Other—>Service Application.将生成一个服务

2016-07-13 20:13:58 7600

转载 关于在Android Studio中使用Assets目录下的资源的问题

转载原文地址:关于在Android Studio中使用Assets目录下的资源的问题一开始在Android Studio中读取Assets目录下的资源的时候,用的是Eclipse下的getResource().getAssets().open(“xxx.xml”);这里假如是读取一个xml文件,但是这个方法在Android Studio中是会报异常的,为何呢?因为Android Studio和Ecl

2016-07-12 23:23:31 3519

原创 Android LayoutInflater原理分析,带你一步步深入了解View(一)

写在前面:大部分内容参考该篇文章:Android LayoutInflater原理分析,带你一步步深入了解View(一)LayoutInflater的基本使用方法首先获取LayoutInflater实例 LayoutInflater inflater = LayoutInflater.from(this);调用LayoutInflater实例的inflate()方法加载布局

2016-07-12 23:05:45 501

原创 VelocityTracker的使用方法

VelocityTracker简介android.view.VelocityTracker主要用跟踪触摸屏事件(flinging事件和其他gestures手势事件)的速率。用addMovement(MotionEvent)函数将Motion event加入到VelocityTracker类实例中.你可以使用getXVelocity() 或getXVelocity()获得横向和竖向的速率到速率时,但是

2016-07-07 20:19:25 3727

原创 Android Studio中找不到模拟器

如下图,在开发Android程序的时候,会发现有时候明明打开了模拟器,但Android Studio中就是找不到,重启后还是一样解决办法如下:可以在/platform-tools/目录下找到adb.exe工具。打开cmd,输入下面两条命令 adb kill-server adb start-server如果在执行adb start-server的时候报下面这个错误,说明端口被占用了

2016-07-06 20:24:02 24183 1

原创 Java反射实践

Java反射实践Java反射机制原理: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。这种反射机制在Java当中给我们带来了极大的方便,被大量地应用于JavaBean中Java反射机制在我的理解当中就是下面几点: 1. 对一个给定的类名

2016-07-04 22:33:11 456

酒店管理系统(VS2008 C#版本)

适合新手学习C#数据库操作,尤其适合Delphi或其它语言转学C#使用的快速上手入门教程,看一眼就会

2013-07-31

微软ASP.NET2.0快速入门1

这是由中国网通技术支持与项目部开发经理 MSDN特邀讲师苏鹏所讲述的ASP.NET快速入门教程,学习ASP.NET的朋友一定要看 开发环境是:Visual Studio 2005 ,里面是使用的语言是VB<br>

2007-12-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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