自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 混合变化(移动,旋转,缩放)的顺序

在opengl和android的canvas对于图形的变化都是用矩阵来操作的,如移动,旋转,缩放。对于组合变化,就是让这些多种变化的矩阵进行相乘,而矩阵的乘法不满足交换律,之这一点上,就可以看出组合变化也不满足交换律。例如:要实现下面两张图形的变化,我们要怎样做:  首先想像一下,只有先缩放再旋转,图形才能变成上图,如果是先旋转再缩放,再就会变成下面的图形(变化会对其中的每个点进行...

2012-04-08 21:25:09 626

gluPerspective和gluLookAt的关系

具体的可以请看:GL学习笔记(2) - 终于搞明白gluPerspective和gluLookAt的关系了函数原型gluLookAt(GLdoble eyex,GLdouble eyey,GLdouble eyez,GLdouble centerx,GLdouble centery,GLdouble centerz,GLdouble upx,GLdouble upy,GL...

2012-03-06 11:40:05 201

浅析QQGame

通过分析QQGame的项目,发现其存在两种方式:1. 不安装游戏apk,直接启动我这里只说其原理,详情讲查看:探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法其原理是:  1. 把apk里的class文件通过DexClassLoader把apk里的class文件全部加载到java虚拟机里,如果要使用其中的某个class时,就要使用反射来调用。  2. 如果这个类是...

2012-03-01 14:31:47 211

球形建模

opengl里的对球形的建模:首先要把球形表式由点组成的模型。现在的问题是:怎么把这个球用点集进行表示。代码如下: final int UNIT_SIZE=10000; ArrayList<Integer> alVertix=new ArrayList<Integer>();//存放顶点坐标的ArrayList final in...

2012-03-01 10:58:12 667

onSaveInstanceState(Bundle outState)的调用时机

Activity的方法onSaveInstanceState(Bundle outState),按照文档里说的,这个方法是在内存不够时,系统要强制杀掉这个Activity时,进行调用的。 但经过我的测试,发现这个方法并不是在系统内存不够时,要杀掉Activity时,才调用的。 测试结果:1. 只要Activity不finish,Activity进入后台(比如Home键,跳转到其...

2012-02-15 11:10:36 229

Activity之间的切换动画

从android系统2.1以后,android新增了方法:overridePendingTransition(int enterAnim, int exitAnim),用于改变Activity之间的切换动画。 从样式里进行改变切换动画这个主要是加在样式文件里进行更改,代码如下: <style name="Theme.Test" parent="@android:style...

2012-02-15 10:53:26 134

原创 数据结构与算法——分析学习笔记

现在工作也已经快两年了,感觉到对基础的知识需求越来越大,这次要下定决心,把数据结构与算法学一遍,所有的代码都要打一遍,并把自己的学习体验写在博客上。 在网上看到也有人把学习数据结构与算法的笔记记录下来了:http://www.luocong.com/dsaanotes/index-Z-H-1.htm...

2012-02-14 12:31:59 145

原创 FLAG_ACTIVITY_NEW_TASK和affinity亲和力

  一直以为在intent里加了FLAG_ACTIVITY_NEW_TASK标记,启动的Activity会被加入一个新的Task栈里,这种理解是错误的。  加了这个FLAG_ACTIVITY_NEW_TASK标记,不一定会启动一个新的栈,其步骤是:先查找有没有和这个Activity的affinity相同的task栈,如果有,则直接在这个task栈里启动,不然才创建一个新的task栈。详情请...

2012-02-06 14:07:39 104

什么时候调用Dialog的dismiss()方法

调用Dialog的dismiss()方法的方式:1. 重写Dialog的onKeyDown()方法里进行调用: @Override public boolean onKeyDown(int keyCode, KeyEvent event) { Log.d(Constant.TAG,"dialog onKeyDown"); if(keyCod...

2012-02-03 16:27:36 502

原创 Google Nexus S root教程

先刷recovery首先第一步要刷Nexus S的recovery才行,要从这里选择安装zip包,注意每刷一次,重启后,都会失效:具体教材:http://bbs.gfan.com/android-527783-1-1.html如果其中的附件下载不下来,可以下载:http://115.com/file/e7h0ek2qroot如果系统是android 4.0.3的,就把Superus...

2012-01-31 11:12:18 217

引用主题属性

文档里写的引用主题属性的方法如下:?[<package_name>:][<resource_type>/]<resource_name>这种引用方法只能在xml文件中使用。?表示引用属性,当使用这个属性的时候,资源工具会从当前的主题样式中查找这个资源名称,可以不用指名具体是类型。用于主题的样式如下:<style name...

2011-12-28 18:09:34 203

Intent的FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

Activity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT 1. 如果已经启动了四个Activity:A,B,C和D。在D Activity里,我们要跳到B Activity,同时希望C finish掉,可以在startActivity(intent)里的intent里添加flags标记,如下所示:Int...

2011-12-18 14:50:43 485

原创 Rendering With Two Threads

The Replica Island renderer is based heavily on the GLSurfaceView class that ships with the Android SDK. I've made a couple of modifications but the code is pretty similar to the regular version: a de...

2011-12-11 15:33:41 112

原创 Why Android Flies

The main mode of movement in Replica Island is flying. The Android robot has thrusters in his feet, and while he can also slide upon the ground, most of the game is spent maneuvering through the air. ...

2011-12-11 15:33:23 81

原创 Aggregate Objects via Components

I used to make games like this:class RenderableMovingCollidableGameObject extends RenderableMovingGameObject { public void update() { super.update(); // Parent classes implement renderi...

2011-12-11 15:33:02 113

Android换肤apk

  在android系统中,每一个application是一个进程和一个用户,不同的进程间是不能互相访问的。如果想让两个程序之间可以相互访问其资源,就可以让这两个apk运行在同一个进程里就可以。要让两个apk运行在同一个进程里,要满足两个条件:相同的sharedUserId和用相同的证书进行签名  默认情况下,如果不配android:sharedUserId,则其userid与包名相同,所...

2011-12-11 15:30:40 135

原创 Androidpn的框架浅析

开发部署方法:  1. 下载androidpn的客户端和服务器:地址为:http://sourceforge.net/projects/androidpn/files/  2. 解压服务器端,点击运行,访问:http://127.0.0.1:7070/user.do,就可以看服务器端的管理页面,用这个管理页面,就要向客户端push消息。  3. 把客户端导入到eclipse工程中,修改...

2011-12-11 13:47:51 132

Androidpn里的Xmpp的理解

  XMPP(可扩展通讯和表示协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线探测。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息。用xmpp来实现android的push功能,感觉有点大材小用了,xmpp本身是一种即时通信协议。  xmpp是一种用于即时通信的协议,使用过程有点类似于我们使用QQ的过程,其使用过程分为三步:  1. 连接服务器,...

2011-12-09 20:31:38 138

Log的tag的设置

android输出日志的方法如下: int android.util.Log.d(String tag, String msg)设置好tag的值可以更加方便于日志的查看,看具体的使用例子:  1. 工具类: public class LogUtil { public static String makeLogTag(Class cls) { ...

2011-12-09 15:27:18 4251

原创 Detecting and responding to dynamic collisions.

In the last post I discussed how Replica Island uses line segments organized as a 2D regular grid of tiles as the basis for its background collision system. This time I will explain how dynamic collis...

2011-12-07 20:39:44 142

原创 Fast and accurate 2D collision detection with line segments

Replica Island is a tile-based game, which means that the levels are laid out using small (32x32), reusable tiles. I chose this approach for two reasons: it's memory efficient and exceedingly common f...

2011-12-07 20:38:23 130

原创 Replica Island Development Blog!

This is the first post for this new-fangled Replica Island development blog. I will use this space to talk about the development of Replica Island, both in terms of code and game design. Since this is...

2011-12-07 20:37:16 124

原创 WinRAR 4.01破解

前一段时间用的是好压,最近发现很多的文件解压时总是报bug,所以今天又改为了WinRAR,这个压缩软件很好用,不过要注册。在网上搜了一下,破解的方法:http://yaokai.com/read.php?269...

2011-12-07 17:57:41 111

原创 moto me860/me722添加GMS

Moto me860和moto me722都不能刷miui,只能刷官方提供的,但其提供的rom里一般都没有google的服务包,这里是从网上找的,而且试验成功的方法。moto me860添加GMS包:      1. 首先下载ME860可用的GMS服务包:ME860可用的GMS包dkdiy.net.rar(下载地址:http://u.115.com/file/bhf82lyv)...

2011-12-07 10:19:41 201

PopupWindow自适应布局

   Android自带的Menu菜单,常常无法满足我们的需求,所以就只有自己写menu菜单,通常的选择是用PopupWindow来实现自定义的menu菜单,先看代码,再来说明要注意的几点: View menuView = inflater.inflate(R.layout.menu_popwindow, null);final PopupWindow p = new PopupWin...

2011-12-04 18:24:44 325

原创 Chrome+SwitchySharp+myentunnel+SSH

 具体设置方法如下:一、获得SSH账号我一开始免费申请了一个,但实在是不好用,就去淘宝买了,用着倒还挺稳定的。(提示:买时注意你的宽带是联通还是电信的,买适合的ssh账号比较好),我这里给个那家店的传送门。http://www.sshcenter.info提供免费24小时的测试账号,只需要提供邮箱地址即可,如果不想用自己常用的邮箱,可以随便乱填一个,这样就有24小时的使用时间...

2011-12-02 19:31:52 508

Activity与Service通信

Activity与Service通信的方式有三种: 继承Binder类  这个方式只有当你的Acitivity和Service处于同一个Application和进程时,才可以用,比如你后台有一个播放背景音乐的Service,这时就可以用这种方式来进行通信。用例子来说明其使用方法:  1. 来看Service的写法: public class LocalService e...

2011-12-02 14:46:22 86

Ant自动打包2(打特殊厂商的包)

  由于公司内置的需要,我们的程序要针对不同的厂商打不同的apk,而且不同厂商之间还有一些差别,所以我在原来打包的基础上进行了扩展,支持不同厂商。  为了便于扩展和维护,我把特殊厂商的代码与原来正常打包的代码进行分离,同时让打包者可以自动选择当前要打包的厂商。 改动的几个地方:  1. 把不同厂商要改动的地方写在宏(就相当于java里的方法)里面,而这些所有的宏,都放在一个当独的s...

2011-11-29 15:08:32 80

Eclipse Indigo设置Courier New字体

网上的教程如下: 步骤如下:1. 用WinRAR找到并打开org.eclipse.jface_3.7.0.I20110522-1430.jar具体位置:$Eclipse目录$/plugins/org.eclipse.jface_3.7.0.I20110522-1430.jar2.找到并修改字体属性依次展开org/eclipse/jface/resources,找到Windows7(jf...

2011-11-25 14:25:52 93

Fragment研究2

  几个类的结构的研究: 对上图的讲解:    1. FragmentManagerImpl里有一个后退栈mBackStack,后退出栈里的对象是BackStackRecord,不是Fragment。    2. BackStackRecord继承FragmentTransation抽象类,同时实现BackStackEntry和Runnable接口。我们在程序里要进行add,remove,...

2011-11-24 10:43:35 112

Ant自动打包

 Ant使用 在ant的官网http://ant.apache.org进行下载后apache-ant-1.8.2包解压(存放的路径不要有中文字符)把ant里的lib设置到环境变量:E:\Android\apache-ant-1.8.2\lib这样在命令行里就可以直接使用ant学习资料:1.  ant使用指南.rar2. 文档:apache-ant-1.8.2/doc...

2011-08-23 15:56:42 98

看模板方法模式的顿悟

  设计模式,这个词听起来真的有种很高深没测的感觉,很想去弄懂它,总感觉要想成为技术大牛,如果连这个都弄不懂,就感觉太差劲了,但每次下定决心去看时,总是看不进去,要么觉得其中的术语太过于正式,很难看懂,还有就是总感觉看了也用不上。  但今天在看模板方法模式时,才发现我已经使用过这个模式,只是自己不知道它就叫模板方法模式而已。  首先我们来看模板方法模式的书面定义:定义一个操作中的算法的...

2011-07-22 10:09:54 86

原创 渐进式下载和流式下载有什么区别

流式下载 下载边播放的BT软件,下载时必须要从电影的开头下载,而并非是其它BT软件的下载方式.,这种可以边下载边播放的下载 方式,就可以称为流式下载在多媒体内容如SVG文件的渐进式下载中,客户缓冲一些数据一段时间,因此可以及时地对内容解码和呈示。为了客户在适当的时间开始呈示文件的内容,客户需要正确地估算启动延迟时间。在发送数据之前或同时,服务器向客户提供表示内容特性的信息,如一些或所...

2010-10-23 12:06:09 598

解决 Android 在Eclipse中 R.java 文件消失问题

先把程序中的引用了没有资源的地方先去掉1.千万不要重启Eclipse、也不自己创建R.java 类文件2.右击你的工程(项目)——>Android Tools——>Fix Project Properties 将会再次创建出R文件,数据不丢失...

2010-10-21 14:56:10 96

TableLaout样式

要想用TableLaout来模仿九宫格的样式,其中有两个难点:[b]一:边框的设置[/b] 每一行中的分隔线,可以直接加在背景图片上。 每行之间的分隔线,可以加一个View对象,对于设置背景就可以了[b]二:点击某一项后,颜色提示[/b] 对于点击的颜色提示,可以在每cell中的ViewGroup上加背景,把其背景设置为一个根据其状态发生变化的Selector。...

2010-10-12 10:41:28 225

原创 Bitmap OutOfMemery

通过GridView的getLastVisiblePosition()和getFirstVisiblePosition()方法确认当前GridView控件中将会显示Dataset中的数据范围,在该范围之内的图片应该是已经解码过的,而不在该区间中的图片,可以在适当的时候使用recycle()方法回收。实现方式可以使用HashMap来存储对应的ID和BitmapHashMap picMap,Int...

2010-08-27 18:43:25 94

density, dip, px, 分辨率的一点理解

主要的知识在:[url]http://xy0811.spaces.live.com/Blog/cns!F8AECD2A067A6B17!1508.entry[/url]我这里只说说我自己的理解:先说清楚一点:什么是显示点阵显示点阵就是指在显示屏上长和宽各能显示出多少个像素点,或者在LED显示屏上长和宽有多少个LED会同时发光。在显示屏上,真正能够显示出来的像素点是有限的,并不是说,...

2010-08-24 23:50:50 169

ListView的一点小知识

在使用ListView时,常常是与其他的layout一起使用,比如要实现分页,加一个标题。我们最快能想到的办法是:写一个LinearLayout布局来实现,但这里就有一个问题,当我们向下翻ListView的时候,标题不会隐藏,其下一页的按钮也不会出来。 后来我就想,如果把ListView的第一个item变成标题或是把最后一个item变成下一页的按钮,不就可以了吗。这样是可以实现,但我们根本...

2010-08-24 10:20:24 75

学习别人的UI

对于程序员来说,最头痛的就是UI界面的设计,而在android中,只能自已做界面。有时就在想,别人是怎么写出那样好看的界面的。Android给我们提供了一个很好的工具,可以查看正在运行的界面的设计:hierarchyviewer.bat使用方法: 第一:运行一个模拟器,并打开要查看的UI界面。 第二:运行android-sdk-windows\tools包下的hiera...

2010-08-23 12:09:09 78

原创 Pretty RatingBar

Android is a great development platform. Numerous built-in components and widgets simplify developer’s life greatly, and Intents are just awesome — in fact, I added sharing of content through Facebook...

2010-08-22 17:08:08 124

空空如也

空空如也

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

TA关注的人

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