- 浏览: 16575 次
最新评论
SurfaceView的使用
先贴上几个地址:
http://www.cnblogs.com/technology-fans/archive/2012/02/29/2373928.html 这里面比较详细地介绍了SurfaceView的原理。
http://www.cnblogs.com/devinzhang/archive/2012/02/03/2337559.html 这里面介绍了SurfaceView的使用方法。
http://www.oschina.net/code/snippet_54100_1423 这里面介绍了SurfaceView的一个基本应用。
SurfaceView继承自View类,感觉上在游戏开发中对于SurfaceView的使用比较常见,SurfaceView的使用基本离不开Canvas控件。
SurfaceView实际上提供了一个图形界面,这个界面上可以用来画图,可以用来播放视频,也可以来显示摄像头图像。SurfaceView可以让开发者在另外的线程中修改UI界面。
1、首先在布局文件中设置一个SurfaceView。
2、SurfaceHolder用来控制SurfaceView,可以通过SurfaceHodler为SurfaceView提供回调函数,使SurfaceView在创建、改变、销毁时进行回调。
<SurfaceView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/surface"/>
public class _tempTest_surfaceViewActivity extends Activity { private SurfaceView surfaceView; private SurfaceHolder sfh; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); surfaceView = (SurfaceView)findViewById(R.id.surface); sfh = surfaceView.getHolder(); //获取SurfaceHodler sfh.addCallback(new Callback() { //为SurfaceHolder添加回调函数 @Override public void surfaceDestroyed(SurfaceHolder holder) { // TODO Auto-generated method stub } @Override public void surfaceCreated(SurfaceHolder holder) { // TODO Auto-generated method stub Canvas canvas = sfh.lockCanvas(null); //为Surface上锁 canvas.drawColor(Color.BLACK); //修改UI sfh.unlockCanvasAndPost(canvas); //解锁Surface并更新UI } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { // TODO Auto-generated method stub } }); } }
发表评论
-
传感器的应用开发
2012-09-07 14:55 667传感器的应用开发 先贴几个地址 http://www ... -
Android笔记——NewDay1 AppWidget的一个更新小问题
2012-08-20 19:17 1004之前在写一个AppWidget,需要根据按键显示不同的内容,其 ... -
Android笔记——Day10 *popUpWindow基本使用 *Notification基本使用
2012-07-20 07:40 965前十天去了北京,今天 ... -
Android笔记——Day9 *Android异步操作 *Http操作基础 *ListView使用方法
2012-07-07 18:34 10891、Android异步操作 ··之前说过用Threa ... -
Android笔记——Day8 *Animation的使用 *实现用户定位
2012-07-07 00:21 847反正每天看看Mars老师视频,完了自己在总结一下,感觉挺好的- ... -
Android笔记——Day7 *AppWidget的使用初步 *Android文本输入输出时的中文编码问题
2012-07-05 02:31 9411、AppWidget的使用初步 先贴个地址,这个地址里面 ... -
Android笔记——Day6 *Service初步 *利用序列化在Activity之间交换数据
2012-07-03 18:12 929昨天貌似ITEYE用CSDN的号登不上去,博客没法写了,现在又 ... -
Android笔记——Day5 *SQLite基本用法 *Broadcast广播机制 *WiFi基础
2012-07-01 00:38 1351//本文中代码基本上是Ma ... -
Android笔记——Day4 *Android对SD卡的操作
2012-06-29 23:03 1704前两天去苏州玩了,今天终于又可以学Android写博客了--# ... -
Android笔记——Day3 *异常处理 *Java中的io *匿名内部类
2012-06-27 10:03 10551、异常处理。 ··Java中含有异常处理机制。 ·· ... -
Android笔记——Day2 *Java中类的继承 *多线程Handler
2012-06-25 22:48 9161、Java中类的继承。 ··Java中类的继承所产生的访 ... -
Android笔记——Day1 *Activity生命周期 *Activiity切换效果
2012-06-24 22:37 11061、Android中Activity的生命周期。 http ...
相关推荐
**Android SurfaceView 使用详解** `SurfaceView` 是 Android 系统提供的一种特殊的视图组件,它允许开发者在应用程序中创建高性能的图形界面,比如游戏、视频播放器等需要连续更新图像的应用。`SurfaceView` 提供...
下面我们将详细讲解SurfaceView的使用以及在实现一个绘图板时的关键知识点。 首先,SurfaceView包含两个主要组成部分:Surface和View。Surface是实际用于绘图的后台缓冲区,而View则负责管理Surface在屏幕上的显示...
本文档主要讲述的是Android之SurfaceView使用总结;SurfaceView是View类的子类,可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图视图。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来...
4. 使用Layout嵌套:可以将SurfaceView和控件放入一个单独的FrameLayout或RelativeLayout中,这样可以确保它们在同一个层级上,但仍然需要注意由于SurfaceView的特殊性,控件可能需要手动调整位置。 总的来说,...
4. **同步机制**:SurfaceView使用了一种称为“ Fence ”的同步机制来确保数据正确地呈现在屏幕上。当后台线程完成绘制并提交后,Fence会确保这些改变在用户看到之前已经完成。 5. **性能优化**:由于SurfaceView的...
如何使用SurfaceView: 1. **添加SurfaceView到布局**:在XML布局文件中添加SurfaceView元素,并设置相应的属性。 2. **获取SurfaceHolder**:在Activity的`onCreate()`方法中,通过`SurfaceView.getHolder()`获取...
文件名`szt_SurfaceView`可能包含的是一个关于SurfaceView使用示例的代码或文档,通过学习和分析这个例子,可以更好地理解和掌握SurfaceView在实际项目中的运用。 总之,SurfaceView是Android游戏开发中的重要工具...
《实例3--使用SurfaceView》 SurfaceView是Android系统中一个非常重要的视图组件,它在处理复杂的图形绘制和视频播放等高性能应用时扮演着关键角色。本实例将深入探讨SurfaceView的工作原理及其使用方法。 1. **...
通过理解SurfaceView的工作原理和使用方法,开发者可以创建出流畅、高性能的Android应用程序,尤其适合处理动态内容和需要高效绘图的场景。在实际项目中,结合其他Android组件和框架,SurfaceView可以发挥更大的作用...
这个压缩包文件中的内容可能包括了斗地主游戏的基本实现、发牌逻辑、洗牌算法、界面绘制以及Android的SurfaceView使用等多个关键知识点。下面将详细阐述这些领域的核心概念。 1. **斗地主游戏逻辑**: 斗地主是一...
android使用双缓冲辨析及surfaceview使用例子
提到关注CSDN博客,说明那里有更详细的SurfaceView使用教程和示例代码,可以帮助读者深入理解并实践SurfaceView在游戏开发中的应用。 综上所述,SurfaceView是Android游戏开发中一个重要的工具,通过其特性可以...
本示例“Android使用SurfaceView实现墨迹天气的风车效果”是一个很好的学习资源,适用于毕业设计或论文研究。这个项目主要展示了如何利用Android的SurfaceView组件来创建类似墨迹天气应用中的风车动画效果。下面将...
### Android App中使用SurfaceView制作多线程动画的实例讲解 #### SurfaceView的定义与应用场景 在Android开发中,为了确保应用的流畅性和响应性,通常需要将耗时操作(如网络请求)放在非UI线程中进行。然而,...
总的来说,实现"android SurfaceView做二维码扫描源码"涉及到Android的SurfaceView使用、摄像头控制、图像处理以及第三方库的集成等多个技术点。理解并掌握这些知识点,才能开发出高效稳定的二维码扫描应用。
在Android开发中,View和SurfaceView是两种常用的用于在屏幕上绘制图形和处理用户交互的组件。...通过理解它们的工作原理和使用场景,开发者可以根据项目需求选择合适的组件,构建出流畅、互动性强的游戏框架。
因此,SurfaceView使用了多线程技术,将耗时的绘图任务移到后台线程,避免阻塞主线程,提高用户体验。 3. **滑块组件**:这个示例中的滑块可能是一个自定义控件,用户可以通过滑动来选择一组按钮。实现这种效果可能...
下面是一个简单的SurfaceView使用例子: 首先,创建一个继承自SurfaceView的类,并实现SurfaceHolder.Callback接口: ```java public class MySurfaceView extends SurfaceView implements SurfaceHolder.Callback...
"说明.txt"可能详细介绍了如何使用这个示例代码以及其中的关键概念,而"SurfaceView-Sample-master"很可能是项目源码,包含了具体的SurfaceView使用示例。 源码分析: - `MainActivity.java`:通常这里是应用的主...