`

surfaceview倒计时显示

阅读更多
static final String tag = "GameView";
//声明GameThread类实例
GameThread gameThread;
public GameView(Context context) {
super(context);
// TODO Auto-generated constructor stub
//获取SurfaceHolder
SurfaceHolder surfaceHolder = getHolder();
//添加回调对象
surfaceHolder.addCallback(this);
//创建GameThread类实例
gameThread = new GameThread(surfaceHolder);
}
public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
Log.v(tag, "surfaceChanged");
}
public void surfaceCreated(SurfaceHolder arg0) {
// TODO Auto-generated method stub
Log.v(tag, "surfaceCreated");
//启动gameThread
gameThread.start();
}
public void surfaceDestroyed(SurfaceHolder arg0) {
// TODO Auto-generated method stub
Log.v(tag, "surfaceDestroyed");
//通过结束run()函数的方法结束gameThread,详见GameThread类的定义
gameThread.run = false;
}
/**
* GameThread的定义
*
*/
class GameThread extends Thread {
SurfaceHolder surfaceHolder;
//run()函数中控制循环的参数。
boolean run = true;
public GameThread(SurfaceHolder surfaceHolder) {
this.surfaceHolder = surfaceHolder;
}
@Override
public void run() {
// TODO Auto-generated method stub
int i = 0;
while(run) {
Log.v(tag, "GameThread");
Canvas c = null;
try {
synchronized (surfaceHolder) {
//我们在屏幕上显示一个计数器,每隔1秒钟刷新一次
c = surfaceHolder.lockCanvas();
c.drawARGB(255, 255, 255, 255);
c.drawText("" + i++, 100, 100, new Paint());
Thread.sleep(1000);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (c != null) {
surfaceHolder.unlockCanvasAndPost(c);
}
}
}
}
}
}
分享到:
评论

相关推荐

    Android利用SurfaceView实现简单计时器

    本篇博客主要探讨如何利用SurfaceView来实现一个简单的计时器功能。 首先,我们需要创建一个自定义的SurfaceView,这里命名为TestView。在TestView的构造函数中,我们获取到SurfaceHolder对象并添加回调...

    Android自定义照相机倒计时拍照

    两个TextView是用来显示提示信息和倒计时的秒数的 相关教程:Android开发从相机或相册获取图片裁剪 Android启动相机拍照并返回图片 <RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android...

    android打地鼠

    - 游戏界面:通常使用 Android 的 `SurfaceView` 或者 `TextureView` 来创建游戏画面,它们提供了更底层的绘图能力,适合处理高性能的游戏画面。 - 地鼠对象:每个地鼠都是一个对象,包含位置、状态(是否冒出地面...

    Android自定义相机实现定时拍照功能

    这篇博客为大家介绍Android自定义相机,并且实现倒计时拍照功能。 首先自定义拍照会用到SurfaceView控件显示照片的预览区域,以下是布局文件: activity_main.xml android:layout_width=match_parent android...

    Android游戏连连看源代码

    Android的CountDownTimer类可以方便地实现倒计时功能,而分数计算则需要在游戏逻辑中嵌入相应的计分规则。 8. **持久化数据**:为了保存游戏进度,可以使用SharedPreferences或SQLite数据库来存储当前的游戏状态。...

    关于自定义安卓录像、拍照窗口的例子

    4. **添加录像计时显示**:题目中提到的"Camera06添加录制计时显示"可能指的是在录像过程中显示倒计时或者已录制时间。你可以创建一个TextView或使用其他UI元素来显示时间,并在开始录像时启动一个定时器更新时间,...

    android实现定时拍照功能

    如代码所示,布局文件中有一个`<FrameLayout>`,其中包含一个`<SurfaceView>`用于显示相机预览,一个`<LinearLayout>`包含设置倒计时的EditText和启动倒计时的Button。 3. **启动相机预览**: 在主活动中,你需要...

    拍摄10秒小视频

    7. **用户体验**:提供清晰的录制指示,如开始/停止按钮、录制指示灯或倒计时显示。同时,考虑到不同设备摄像头朝向差异,需处理横竖屏切换。 8. **文件保存**:录制完成后,使用`MediaRecorder.setOutputFile()`...

    anzhuollk_java_

    1. **图形界面(UI)**:游戏界面的创建和更新,如棋盘的绘制、方块的显示与隐藏,可能使用自定义View或SurfaceView。Android的Canvas和Bitmap类用于图形绘制,事件监听器(OnClickListener、OnTouchListener)用于...

    Android2D联系之找茬

    Android提供了CountDownTimer类,可以方便地实现倒计时功能。同时,游戏状态的管理也很重要,包括开始、暂停、重置等,这需要良好的编程逻辑和状态机设计。 此外,游戏界面的布局设计也很关键。Android的Layout系统...

    Android-Android仿微信短视频录制

    设计一个直观易用的用户界面是必不可少的,包括录制按钮、暂停/继续按钮、倒计时提示等。此外,UI设计还需要考虑到不同屏幕尺寸和方向的支持。 10. **性能优化**: 为了提高用户体验,需要考虑性能优化,例如通过...

    安卓短视频录制

    可以创建一个后台线程或者使用Handler的postDelayed方法来实现倒计时,并在达到设定时间时停止录制。 4. **画中画与贴纸功能**: 添加贴纸和表情需要理解Android的图形绘制,可以使用`Canvas`和`Bitmap`来实现。用户...

    android高手进阶教程 完整版 pdf

    - 在Widget中显示倒计时天数、小时数、分钟数和秒数。 - 更新Widget界面以显示最新的倒计时数据。 #### 九、Android Handler的使用 - **Handler机制**:Handler主要用于实现线程间的通信,可以发送消息和处理...

    小视频录制

    此外,UI状态需要实时反馈,如录制时长的倒计时、录制中的提示等。 6. 文件存储和管理:录制的视频文件需要存储在本地,Android通常存放在外部存储的特定目录下,iOS则在Documents或Library目录下。文件命名应具有...

    照相机app源码

    8. **用户体验优化**:添加闪光灯控制、拍照倒计时、取景框辅助线等功能,提升用户交互体验。 9. **权限和隐私**:保护用户隐私,如仅在需要时请求访问存储权限,确保拍摄的照片和视频安全存储。 10. **错误处理**...

    Android拍照,连拍以及自动拍照

    4. 用户体验:设计良好的用户界面和反馈机制,如显示拍照倒计时、预览效果、拍摄成功提示等。 总之,Android拍照功能涉及多方面知识,包括硬件接口、软件框架、多媒体处理和用户体验设计。开发者需要根据具体需求...

Global site tag (gtag.js) - Google Analytics