Android游戏开发 - 使用单一视图的一切?

时间:2012-04-28 08:40:42

标签: android android-layout

所以我正在尝试为Android编写游戏,我有几个关于android dev的'最佳实践'的问题。我正在写的游戏在屏幕的顶部会有一些骰子,用户应该可以拖动它,在屏幕的下半部分,我需要显示不同数字的列表,更新为骰子被放入一个新的位置。那么,解决这个问题的最佳方法是什么?我已经使用单个视图编写了一些示例代码(可以工作),并绘制了骰子位图和数字,但是所有内容都依赖于分辨率,这让我感到烦恼。我可以通过切换到xml定义的视图,添加骰子视图和数字列表视图,并单独绘制它们来获得任何东西吗?我应该遵循标准或最佳实践吗?

由于

2 个答案:

答案 0 :(得分:0)

最好在xml文件中定义一个布局,以便您的应用在不同的屏幕尺寸上运行..

有关您应该使用xml文件的更多信息,请参阅Android Design Guidelines

使用xml文件时,请使用dp表示大小,使用sp表示文字大小,尽可能使用wrap_contentmatch_parent

您还可以在代码中创建与密度无关的像素。请看这个..

public float typedDimension(int a){
         return  TypedValue.applyDimension(
                    TypedValue.COMPLEX_UNIT_DIP, (float) a,
                    getResources().getDisplayMetrics());
     }

答案 1 :(得分:0)

首先,SurfaceView是游戏开发的不错选择 - 它会比标准视图提供更好的性能。

其次,我所看到的一个很好的技术是写入标准尺寸的离屏表面,然后将该位图缩放到屏幕大小。当你有不同大小的屏幕时,一切都仍然在正确的位置。请注意,您应该按比例缩小而不是按比例放大,因此您可能希望使用不同大小的图像(对于mdpi,hdpi,xhdpi),以避免在较低的设备上使用太多内存。