摘要:
java.util.*;import java.text.*;import java.util.Calendar;public class VeDate {/** * 获取现在时间 * * @return 返回时间类型 yyyy-MM-dd HH:mm:ss */public static Date getNowDate() { Date currentTime = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateString = 阅读全文
摘要:
第一类:Frame By Frame 帧动画( 不推荐游戏开发中使用) 所谓帧动画,就是顺序播放事先做好的图像,类似于放电影; 分析: 此种方式类似我之前的那种利用设置可视区域的方式来实现动画效果,不仅类似而且还不如!所以此种方式在此不予分析;第二类:Tween Animation 渐变动画 即通过对对象不断做图像变换(平移、缩放、旋转)产生动画效果!实现方式其实就是预先定义一组指令,这些指令指定了图形变换的类型、触发时间、持续时间。这些指令可以是以 XML 文件方式定义,也可以是以源代码方式定义。程序沿着时间线执行这些指令就可以实现动画 效果。总结:那么在Android 游... 阅读全文
摘要:
简 单介绍了SurfaceView的基本使用,这次就介绍SurfaceView与多线程的混搭。SurfaceView与多线程混搭,是为了防止动画闪烁 而实现的一种多线程应用。android的多线程用法与JAVA的多线程用法完全一样,本文不做多线程方面的介绍了。直接讲解SurfaceView与多 线程的混合使用,即开一条线程专门读取图片,另外一条线程专门绘图。 本文程序运行截图如下,左边是开单个线程读取并绘图,右边是开两个线程,一个专门读取图片,一个专门绘图: 对 比一下,右边动画的帧速明显比左边的快,左右两者都没使用Thread.sleep()。为什么要开两个线程一个读一个画,而不去开两个.. 阅读全文
摘要:
SurfaceView类是一个用于处理Surface的视图,也是Android Api提供的另一个类。什么是Surface呢?它是一个抽象的原始缓冲区,被屏幕组合器用于渲染特定视图。屏幕组合器是Android上所有渲染的幕后推手,并最终负责将所有的像素点推送到GPU。我们的目标就是在一个独立的线程中执行渲染,而不用大量占用UI线程,因为UI线程还有很多工作要做。SurfaceView类提供了一种在UI线程之外的线程中进行渲染的方式。SurfaceHolder和锁定为了在UI线程之外的另一个不同线程中渲染到SurfaceView,我们需要获得一个SurfaceHolder类的实例,如下所示:Su 阅读全文
摘要:
首先我们先来看下官方API对SurfaceView的介绍SurfaceView的API介绍Provides a dedicated drawing surface embedded inside of a view hierarchy. You can control the format of this surface and, if you like, its size; the SurfaceView takes care of placing the surface at the correct location on the screenThe surface is Z ordere 阅读全文
摘要:
[color=#ff0000][size=18px]透明//Transparent半透明//Translucent[/size][/color]package rw.Trans;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.PixelFormat;import android.o 阅读全文
摘要:
一、SurfaceSurface 就是“表面”的意思。在SDK的文档中,对Surface的描述是这样的:“Handle onto a raw buffer that is being managed by the screen compositor”,翻译成中文就是“由屏幕显示内容合成器(screen compositor)所管理的原生缓冲器的句柄”,这句话包括下面两个意思:1. 通过Surface(因为Surface是句柄)就可以获得原生缓冲器以及其中的内容。就像在C语言中,可以通过一个文件的句柄,就可以获得文件的内容一样;2. 原生缓冲器(rawbuffer)是用于保存当前窗口的像素数.. 阅读全文
摘要:
今天学习不在布局文件中写布局而将布局文件写入到程序的Activity中去,在布局文件中去布局,当我利用LayoutInflactor新建了 CheckedTextView控件以后,然后将CheckedTextView添加入ListView中,然后使用CheckedTextView使用 setChecked将CheckedTextView设置成true或者设置成false的时候,发现无法改变CheckedTextView的选中的 状态,不能使用CheckedTextView自己带的方法去修改自身的选中状态。(CheckBox有同样的问题)。 其中Activity中添加ListView的方法代码如 阅读全文
摘要:
需求:单击返回键两次退出,单击一次返回键Toast提示,在其后2s内再单击一次返回键就退出。 private static Boolean isExit = false; private static Boolean hasTask = false; Timer tExit = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { isExit = false; hasTask = true; } }; @Override public boolean onKeyDown(int keyCod 阅读全文