android
文章平均质量分 67
ruanjianxiong
这个作者很懒,什么都没留下…
展开
-
Android移植之自定义ProgressBar
昨天看了一下progressbar,今天总结一下。ProgressBar这个类在/froyo/frameworks/base/core/java/android/widget/ProgressBar.java当你去new一个ProgressBar的时候需要传进去参数,我们从这里看一下它执行的流程。本篇的主要意图还是告诉你如何修改style去改变样式,如果你想diy自己的Progress转载 2013-01-24 17:50:05 · 1920 阅读 · 0 评论 -
使用SoundPool播放游戏音效
在Android开发中我们经常使用MediaPlayer来播放音频文件,但是MediaPlayer存在一些不足,例如:资源占用量较高、延迟时间较长、不支持多个音频同时播放等。这些缺点决定了MediaPlayer在某些场合的使用情况不会很理想,例如在对时间精准度要求相对较高的游戏开发中。 在游戏开发中我们经常需要播放一些游戏音效(比如:子弹爆炸,物体撞击等),这些音效的共同特点转载 2011-12-23 13:47:35 · 970 阅读 · 0 评论 -
显示界面类--GameView
package com.bn.box2d.bheap; //声明包 import android.graphics.Canvas; //导入相关类 ......//该处省略了部分导入相关类的代码,读者可以自行查阅随书光盘的源代码 import android.vi转载 2011-12-23 10:26:54 · 2413 阅读 · 0 评论 -
客户端套接字(Socket)超时
客户端套接字的超时 (timeout)就是指在客户端通过Socket和服务器进行通讯的过程中,由于网络延迟,网络阻塞等原因,造成服务器并未及时响应客户端的一种现象。 在一段时间后,客户端由于未收到服务端的响应而抛出一个超时错误; 其中客户端所等待的时间就是超时时间。 由于生产超时错误的一端都是被动端;也就是说,这一端是在接收数据,而不是发送数 据。对于客户端Socket来说,只有两转载 2011-12-19 13:21:35 · 1343 阅读 · 0 评论 -
为什么调用glPushMatrix()和glPopMatrix()
今天忽然感悟到为什么在进行变换之前要用glPushMatrix();这个函数,而在变换完毕后有用glPopMatrix()这两个函数了,赶紧记下来: 我们在变换坐标的时候,使用的是glTranslatef(),glRotaef()等函数来操作,操作的是什么呢?操作的是当前矩阵,我们也知道,这些坐标变换(翻转,旋转也好)都是通过操作矩阵来实现的,而矩阵相乘是会叠加的,当你用完一个变换函数后转载 2011-12-09 16:08:57 · 402 阅读 · 0 评论 -
android opengl
第二课 你的第一个多边形:添加一个三角形和一个四边形。也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形。其他类不变,只更改OpenGLRenderer类。首先,我们画一个三角形主要是在OnDrawFrame里面画,使用的函数是gl.glDrawArrays(GL10.GL_TRIANGLES, 0, 3);或转载 2011-12-08 09:28:41 · 738 阅读 · 0 评论 -
eclipse中android模拟器找不到的解决办法
因为操作系统安装的时候是把我的文档安装在了D盘中,所以在eclipse中创建的avd都会默认在D:/我的文档/.android这个目录下面,而eclipse中启动android模拟器的时候自动寻找路径是在C:/Documents and Settings/Administrator/.android下的avd里面,所以此时就会提示找不到模拟器。 解决办法是: 1、尽管用转载 2011-11-07 13:42:15 · 4179 阅读 · 0 评论 -
在开发过程中使用Android返回键
在开发android应用时,常常通过按返回键(即keyCode == KeyEvent.KEYCODE_BACK)就能关闭程序,其实大多情况下并没有关闭改应用 我们可以这样做,当用户点击自定义的退出按钮或返回键时(需要捕获动作),我们在onDestroy()里强制退出应用转载 2011-09-29 14:54:51 · 565 阅读 · 0 评论 -
为什么调用glPushMatrix()和glPopMatrix()
今天忽然感悟到为什么在进行变换之前要用glPushMatrix();这个函数,而在变换完毕后有用glPopMatrix()这两个函数了,赶紧记下来: 我们在变换坐标的时候,使用的是glTranslatef(),glRotaef()等函数来操作,操作的是什么呢?操作的是当转载 2011-09-27 15:37:13 · 402 阅读 · 0 评论 -
游戏中的碰撞检测
游戏中的碰撞检测方式有很多,不同的算法之间主要是在精度和速度之间权衡。以下几种方式按照速度排序说明。以2D为例,3D不过是增加了一维罢了,算法理解上没太大区别。一、地图格子划分检测 最简单的一种检测,就是把地图(或者称为场景,总之是指碰撞发生的范围)划成一个个转载 2011-08-24 17:20:32 · 10423 阅读 · 4 评论 -
关于Bitmap像素颜色的判断
android.graphics.Bitmap.Config是一个枚举类型,里面定义了位图的四种格式。通过名称可以大概判处出颜色的存储方式:ALPHA_8:由一个字节表示的图像,是一种8位的位图ARGB_4444:由两个字节来表示的图像,是一种16位的位图ARGB_888转载 2011-08-25 13:49:26 · 8471 阅读 · 2 评论 -
Android中Bitmap类getPixel方法获取的像素值为负
最近在做Android上的图像处理,在Android上直接对像素操作,居然出现了意想不到的事情。Bitmap类getPixel方法获取的像素值全部是负的,本来应该是黑色的,也就是0的,全部变成了-16777216,很是奇怪。但是仔细研究研究这个16777216又比较特殊,因为16转载 2011-08-25 13:47:40 · 13833 阅读 · 5 评论 -
Android的SoundPool类使用与利弊
在开发Android软件中我们可能经常需播放多媒体声音文件,一般使用MediaPlayer类但该类占用资源较多,对于游戏等应用可能不是很适合,这里Android123描述下SoundPool类。SoundPool类在SDK的android.media.SoundPool,顾名思义是声音池的意思。主要播放一些较短的声音片段,可以从程序的资源或文件系统加载,相对于MediaPlayer类可以做到使用较转载 2011-12-23 14:05:21 · 612 阅读 · 0 评论 -
在OpenGL中使用gluLookAt实现漫游
一般情况下实现第一人称视角游戏有两种方法,一是移动场景,二是移动眼坐标.移动场景方法比较简单,使用glTranslatef与glRotatef配合即可,但一般只在简单场景和单角色的情况下使用,而且角色的各种计算(如实时坐标、碰撞)不好实现,所以不推荐使用;移动眼坐标的方法就非常灵活,它对场景和角色的状态未做任何操作,一般只要设置成跟随主角色移动旋转即可实现第一人称视角视觉效果.void Air转载 2011-12-26 09:34:31 · 5357 阅读 · 0 评论 -
android数据存储之SharedPreferences
SharedPreferences的使用包括两方面: 1)利用SharedPreferences读取保存的配置; 2)利用SharedPreferences保存用户的配置。一:有三种获取系统中保存的持久化数据的方式:1) public SharedPreferences getPreferences (int mode) 通过Activity对象获取,获取的是本转载 2012-02-03 10:52:25 · 784 阅读 · 0 评论 -
vmware不能resume问题,Collect Support Data,vmware.log
本来一直在vmware下linux环境交叉编译,做嵌入式开发。今天电脑特卡,就提前给电脑关机了。重启后,发现启动虚拟机报错: vmware workstation unrecoverable error:(vmx) exception oxc000006(disk error while paging) has occurred. 。。。我反复了N次,无果,后说收集什么转载 2013-01-08 13:40:03 · 1769 阅读 · 0 评论 -
linux ls -l 命令 详解
我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思以笔者电脑的/root目录为例:[root@gucuiwen root]# ll 总用量 405转载 2012-12-20 14:59:16 · 1073 阅读 · 0 评论 -
Android 4.0 ICS SystemUI浅析——StatusBar加载流程分析
前面两篇文章《Android 4.0 ICS SystemUI浅析——SystemUI启动流程》、《Android 4.0 ICS SystemUI浅析——StatusBar结构分析》SystemUI和StatusBar的冰山一角,那么本文将从代码的角度来分析StatusBar的加载流程。 本文来自:http://blog.csdn.net/yihongyuelan 欢迎转转载 2012-12-26 18:08:48 · 1785 阅读 · 0 评论 -
Android 4.0 ICS SystemUI浅析——StatusBar结构分析
在上一篇文章《Android 4.0 ICS SystemUI浅析——SystemUI启动流程》中以及提到了SystemUI的组成,本文主要分析其中的StatusBar结构。 1.布局概览 首先,我们通过hierarchyviewer这个工具来查看一下系统启动后的布局情况(注:hierarchyviewer在SDK/tools目录下,在windows环境下直接运行h转载 2012-12-26 18:07:29 · 760 阅读 · 0 评论 -
Android 4.0 ICS SystemUI浅析——SystemUI启动流程
阅读Android 4.0源码也有一段时间了,这次是针对SystemUI的一个学习过程。本文只是对SystemUI分析的一个开始——启动流程的分析,网上有很多关于2.3的SystemUI的分析,可4.0与2.3的差别还是很大的,为了给自己留下笔记同时也方便大家学习和探讨,遂写此文,后续将有更多关于SystemUI的分析,敬请关注。 转载请注明出处:http://blog.csdn.转载 2012-12-26 18:05:31 · 769 阅读 · 0 评论 -
Android高手进阶教程(十七)之---Android中Intent传递对象的两种方法(Serializable,Parcelable)!
大家好,好久不见,今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解转载 2012-02-09 10:07:49 · 421 阅读 · 0 评论 -
Android高手进阶教程(九)之----Android Handler的使用!!!
大家好我们这一节讲的是Android Handler的使用,在讲Handler之前,我们先提个小问题,就是如何让程序5秒钟更新一下Title.首先我们看一下习惯了Java编程的人,在不知道Handler的用法之前是怎么样写的程序,代码如下所示:view plaincopy to clipboardprint?package com.android.tutor; imp转载 2012-02-09 09:35:31 · 433 阅读 · 0 评论 -
区分Activity的四种加载模式----以及Intent的setFlags
在多Activity开发中,有可能是自己应用之间的Activity跳转,或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例,而不是产生大量重复的Activity。这需要为Activity配置特定的加载模式,而不是使用默认的加载模式。加载模式分类及在哪里配置Activity有四种加载模式:standard singleTop singleTas转载 2012-02-09 11:22:06 · 437 阅读 · 0 评论 -
windows系统上安装与使用Android NDK r5
很早就听说了android的NDK应用,只是一直没有时间去研究,今天花了点时间在windows平台搭建了NDK环境,并成功运行了第一个简单的android应用。一:什么是NDK?NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和java 应用一起打包成apk。这些工具对开发者的帮助是巨大的。NDK 集成了交叉编译器,并提供了相应的mk 文件隔离转载 2011-12-30 14:41:58 · 531 阅读 · 0 评论 -
[Google Android] 理解NDK(1)-- 编译Android .so文件
/** 转载必须标明出处*/说白了就是c代码做成动态库,被java代码调用(JNI)。用C写不出可以直接在Android上跑的可执行程序来。NDK开发需要一个交叉编译环境,需要安装Cygwin, NDK。这些准备工作就不说了网上很多,当然也可以问我。讲一下.so文件的生成------------------------------------------------------转载 2011-12-30 15:55:50 · 633 阅读 · 0 评论 -
Android 面试题积累
1、什么是ANR 如何避免它? http://blog.csdn.net/Zengyangtech/archive/2010/11/21/6025671.aspx 2、什么情况会导致Force Close ?如何避免?能否捕获导致其的异常?3、Android本身的api并未声明会抛出异常,则其在运行时有无可能抛出runtime异常,你遇到过吗?诺有的话会导致什么问题?如何解转载 2011-12-29 09:38:27 · 715 阅读 · 0 评论 -
android 下怎样获取图片像素值
int[] pixels = new int[bit.getWidth()*bit.getHeight()];//保存所有的像素的数组,图片宽×高 bit.getPixels(pixels,0,bit.getWidth(),0,0,bit.getWidth原创 2011-08-25 13:46:29 · 10005 阅读 · 2 评论 -
OGRE里如何实现碰撞检测
在3D游戏中,碰撞检测算得上是最复杂也是最影响游戏效果的环节了,这里简单介绍一下如何在OGRE引擎里实现简单的碰撞检测。话不多说,先贴代码:bool EdenCollisionManager::Collide(){bool collide=false;转载 2011-08-24 17:28:14 · 3064 阅读 · 0 评论 -
AndEngine之PhysicsRevoluteJointExample
public class PhysicsRevoluteJointExample extends BasePhysicsJointExample { // =========================================================原创 2011-08-24 10:50:40 · 742 阅读 · 0 评论 -
Android OpenGL es 纹理坐标设定与贴图规则
当opengl对一个四方形进行贴图时,会定义纹理贴图坐标,一串数组,相信初学openggl es者看到后会很头疼,不知道写得是什么东西。现在就将我的研究成果与大家分享下!当纹理映射启动后绘图时,你必须为OpenGL ES提供其他数据,即顶点数组中各顶点的纹理坐标。纹理坐标定义了图转载 2011-07-19 09:46:44 · 3240 阅读 · 1 评论 -
Android 笔记 Canvas Bitmap
位图是我们开发中最常用的资源,毕竟一个漂亮的界面对用户是最有吸引力的。1. 从资源中获取位图可以使用BitmapDrawable或者BitmapFactory来获取资源中的位图。当然,首先需要获取资源: Resources res=getResources();复制代码使用Bit转载 2011-07-25 13:21:22 · 1111 阅读 · 0 评论 -
Android OpenGL ES (2) -- 纹理
五颜六色的立方体并算是什么太有意思的事情,看上去太假,没什么感觉。 解决办法就是纹理贴图了。OpenGL 中使用纹理要先用 glEnable 来启用相关功能 gl.glEnable(GL10.GL_TEXTURE_2D);然后先准备一张图片作为纹理贴图,需要注意的是,有些设备转载 2011-07-12 16:37:15 · 1322 阅读 · 0 评论 -
回调函数总结
别人给回调的定义:所谓回调,就是对象A调用另一对象B中的某个方法b,然后B又在某个时候反过来调用A中的某个函数c,对于B来说,这个c便叫做回调函数。回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口. 我的理解, 和一般的类之间的组合类似。就只是A对象调用转载 2011-07-22 15:27:45 · 525 阅读 · 0 评论 -
context 的理解
在android中context可以作很多操作,但是最主要的功能是加载和访问资源。在android中有两种context,一种是application context,一种是activity context,通常我们在各种类和方法间传递的是activity context。比如一转载 2011-07-22 13:31:58 · 3558 阅读 · 1 评论 -
Android OpenGL ES (1) -- 基础
Android 上开发三维图形程序主要使用 OpenGL ES 接口了, 这个OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 的子集,主要针对移动设备。该API目前由 Khronos 维护,Khronos是一个图形软硬件行业协会,转载 2011-07-12 09:13:07 · 836 阅读 · 0 评论 -
Android OpenGL学习笔记(一)
大家好,今天我讲一下Android OpenGL,这个系列是我的学习笔记,希望对大家有所帮助!这一节将给大家简洁的介绍一下术语,以及第一个Android OpenGL程序. 首先让我看们看一下术语: Vertex (顶点)A vertex is a point in 3D spa转载 2011-07-07 09:58:43 · 530 阅读 · 0 评论 -
Android OpenGL教程-第二课
Android OpenGL 教程第二课 你的第一个多边形:在第一个教程的基础上,我们添加了一个三角形和一个四边形。也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形。读完了这一课,你会学到如何在空间放置模型,并且会知道深度转载 2011-07-08 09:41:51 · 465 阅读 · 0 评论 -
Android OpenGL学习笔记(二)之----三角形的绘制.
前面讲了一些Android OpenGl 的概念问题,这一节讲给大家讲一下如何画一个三角现出来. 一、新建一个Android工程命名为:OpenGL_Lesson2. 二、修改OpenGL_Lesson2.java代码如下:package com.android.tutor;转载 2011-07-07 14:45:04 · 521 阅读 · 0 评论 -
Android OpenGL教程-第一课
Android OpenGL 教程第一课快速的开始一个Android OpenGL项目首先,读懂我们的教程,需要有android的初步基础,我们这里只是通过android提供的SDK,来进行OpenGL的学习,所以你必须先学习如何建立一个android的项目,同时了解activi转载 2011-07-07 15:00:55 · 583 阅读 · 0 评论 -
JAVA获取随机数
在Java中我们可以使用java.util.Random类来产生一个随机数发生器。它有两种形式的构造函数,分别是Random()和Random(long seed)。Random()使用当前时间即System.currentTimeMillis()作为发生器的种子,Random(转载 2011-07-28 14:30:17 · 541 阅读 · 0 评论