android中的回调举例:在surfaceview中结束宿主activity
来源:互联网 发布:网站视频分段播放 php 编辑:程序博客网 时间:2024/05/22 04:57
背景
SurfaceView是游戏开发中经常使用到的View,能够实时的更新UI界面,实现游戏逻辑。在这里的讨论中,我设定了一个GameActivity , 在这个activity的布局中,放置了一个全屏的GameSurfaceView。GameActivity虽然是游戏的主体,但游戏的逻辑和显示都是由GameSurfaceView负责。游戏开始后,GameSurfaceView在新开的线程中运行,并即时的更新游戏界面。
当游戏逻辑结束时,需要结束掉activity,以使得activity stack顺序清晰。特别是在2.2系统下,不能一次性关闭app,只能每次都关闭掉各个acticity。
实现
如何在GameSurfaceView中结束掉这个activity呢?
增加回调接口,在GameSurfaceView中实现回调!
关于回调的介绍: callback。
1,设定一个回调接口
public interface OnEndOfGameInterface {public void onEndOfGame();}
在GameActivity中实现这个接口。
public class GameActivity extends Activity implements OnEndOfGameInterface {//....@Overridepublic void onEndOfGame() {this.finish();}}
在GameSurfaceView中定义回调类型的成员。 并定义一个public method 用来设置回调成员为GameActivity。
protected OnEndOfGameInterface mOnEndOfGame ; //callback interfacepublic void setOnEndOfGame(OnEndOfGameInterface xOnEndOfGame){mOnEndOfGame = xOnEndOfGame;}
GameActivity中,开启GameSurfaceView的同时,必须调用setOnEndOfGame方法,设定好回调。
mGameSurfaceView = (ReverseGameSurfaceView) findViewById(R.id.reverse_game_surface_view);mGameSurfaceView.setOnEndOfGame(this); //传入this,设定自己为回调目标mGameSurfaceView.setMode(GameBasicSurfaceView.RUNNING);
如此,当GameSurfaceView结束时,就可以调用onEndOfGame方法,实现回调了!
- android中的回调举例:在surfaceview中结束宿主activity
- 【自用】关于surfaceview调用宿主Activity中的方法
- SurfaceView在宿主窗口“挖洞”过程要点
- android 在一个Activity中结束另一个Activity的方法(可以完全退出程序)
- android 在一个Activity中结束另一个Activity的方法(可以完全退出程序)
- android开发中结束所有activity
- android开发中结束所有的activity
- Android中的回调举例解析
- 关于在宿主activity中设置按钮,动态控制viewPager中的字体的大小的设置,在答题项目中遇到,在此做记录,方便日后学习,改进。
- 插件APK中的activity显示的视图,其实是附着在宿主Activity上的
- Android中在SurfaceView上高效绘图
- Android中在SurfaceView上高效绘图
- Android中在SurfaceView上高效绘图
- NEON在Android中的使用举例
- Android填坑之旅(第二十篇)如何在Activity/Fragment结束时处理异步回调?
- android 结束Activity
- Android应用程序在新进程启动Activity及结束进程
- Android 在Activity中响应Fragment中的事件
- 编程之美的诱惑
- How Tomcat Works学习笔记<六>
- 我java启蒙老师 郝斌老师
- Android 让adb logcat打印内核调试信息
- Linux的特殊文件权限
- android中的回调举例:在surfaceview中结束宿主activity
- 快速发现Windows系统监听或开放端口
- 程序员心境
- Oracle表的死锁
- package、jar和访问控制
- 如何在LINUX中获取进程中某个虚拟地址所在物理内存地址
- 服务器租用之服务器带宽情况分析
- 专业重点
- POI:Excel计算公式的再计算