`
文章列表
SurfaceView在游戏开发中有着举足轻重的地位,它对于画面的控制有着更大的自由度(不像View要用handler来更新,关于View的),但这方面的参考资料并不是太多,能找到的例子都有点喧宾夺主的感觉,不能把使用的流程清晰展示出来,下面是个简单的示例,力求把流程清楚展示,其他的可简则简。   程序效果:用线程画一个蓝色的长方形。 package com.ray.test; /* * SurfaceView的示例程序 * 演示其流程 */ import android.app.Activity; import android.content.Context; imp ...
int screenWidth; int screenHeight; WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight();  
在Android中,分别可以在xml中定义Animation,也可以在程序代码中定义,下面的小例子是利用RotateAnimation简单展示一下两种方法的用法,对于其他动画,如ScaleAnimation,AlphaAnimation,原理是一样的。   方法一:在xml中定义动画: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> ...
程序效果:读入bitmap的数据流,解码,再画出来:     代码如下: package com.ray.draw; import java.io.InputStream; import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Paint; i ...
刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题 new Thread( new Runnable() { public void run() { myView.invalidate(); } }).start();   然而发现这样是不行的,因为它违背了单线程模型:Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。查阅了文档和apidemo后,发觉常用的方法是利用Handler来实现UI线程的更新的。   下面代码的功能很简单:画一个 ...
程序效果是:在屏幕上画一个圆,可以用鼠标任意移动到屏幕上任何一个地方:   package com.ray.view; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.os.Bundle; import android.view.MotionEvent; import android. ...
很小很简单的程序,但很有用:   package com.ray.touch; import android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; import android.widget.TextView; import android.widget.Toast; public class TouchPaint extends Activity { TextView tv; @Override public void onCreat ...
Android里的大部分widget都可以加进动画,下面是一个小示例:   先在res里创建anim文件夹,在里面创建动画配置文件1,shake.xml: <?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0" android:toXDelta="10" ...
Android menu是Android开发中经常使用的,下面的例子是Menu使用的简单示例: package com.enjoy.menu; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.TextView; public class SystemMenu extends Activity { public static final int SAVE = ...
Android中提供一个叫Intent的类来实现屏幕之间的跳转,下面是一个简单的示例:   在应用中增加一个Activity(名字为.ForwardTarget),这需要修改AndroidManifest.xml文件,如下:   <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"       package="com.ray.forwa ...
在Andorid开发中经常遇到与SD卡有关的调试,比如MP3文件、图片文件等。 在使用模拟器开发时,可以通过硬盘来模拟SD卡。具体做法是:   1.创建一个SD卡镜像文件     打开cmd,我是进入到c盘根目录下,输入如下命令:mksdcard 1024M sdcard.img    该命令会在当前目录(我即是c盘根目录)下生成一个sdcard.img文件,该文件就是Android模拟器的SD卡镜像文件。    1024M表示1024兆,即该SD卡有1个G的容量,也可用K做单位(1M=1024K),K,M必须大写。    目前Android支持8M~128G的SD卡。   2.关联 ...
1.1版本的emulator在设置好环境变量后,直接在命令行中输入 emulator就可以启动了,但是1.5版本中加了个所谓的AVD(Android Virtual Device),AVD就相当于是一个模拟器的,不过你可以利用AVD创建基于不同版本的模拟器,然后使用emulator-avd avdName命令启动不同的模拟器,下面就介绍如何创建AVD:   1.查看当前支持版本(在列出的版本中我们需要记住id值,这个值在第2步中使用):  android list targets   2.创建AVD(最后的2表示创建1.5版本的avd): android create avd – ...
在Activity的onCreate函数中,加入如下代码: requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN);    
教育网无法从官网上下载jdk(主要是不能从cds.sun.com下载)的问题: dns出来问题。原来设的dns虽然能找到cds.sun.com,但很可能下载链接需要跳转到另外一个服务器,而这个服务器的ip我们的dns找不到。所以无论是浏览器另存还是强 ...
Global site tag (gtag.js) - Google Analytics