1.在XML文件中添加SurfaceView元素:
2.在Java代码中获取SurfaceView并实现SurfaceHolder.Callback接口:
public class MainActivity extends AppCompatActivity implements SurfaceHolder.Callback {
private SurfaceView gameSurfaceView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gameSurfaceView = findViewById(R.id.game_surface_view);
gameSurfaceView.getHolder().addCallback(this);
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
// 初始化游戏画面
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
// 改变游戏画面尺寸
}
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
// 销毁游戏画面
}
}
3.在SurfaceHolder.Callback接口方法中实现游戏画面的初始化、改变尺寸和销毁。
至此,SurfaceView就可以在你的应用程序中正确工作了。