1

因此,我正在尝试为 android 编写游戏,并且我有几个关于 android dev 的“最佳实践”的问题。我正在编写的游戏将在屏幕顶部有一些骰子,用户应该能够拖动它,在屏幕的下半部分,我需要显示不同数字的列表,更新为骰子被扔到一个新的位置。那么,解决这个问题的最佳方法是什么?我使用单个视图编写了一些示例代码(有效),并绘制了骰子位图和数字,但一切都非常依赖于分辨率,以至于它让我烦恼。通过切换到 xml 定义的视图、添加骰子视图和数字列表视图并分别绘制它们,我会得到什么吗?是否有我应该遵循的标准或最佳实践?

谢谢

4

2 回答 2

0

xml文件中定义布局是一个很好的做法,这样您的应用程序就可以在不同的屏幕尺寸上运行。

有关为什么应该使用 xml 文件的更多信息,请参阅Android 设计指南

使用 xml 文件时,使用 dp 作为大小,使用 sp 作为文本大小,尽可能使用wrap_contentand 。match_parent

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

public float typedDimension(int a){
         return  TypedValue.applyDimension(
                    TypedValue.COMPLEX_UNIT_DIP, (float) a,
                    getResources().getDisplayMetrics());
     }
于 2012-04-28T08:54:35.620 回答
0

首先,SurfaceView是游戏开发的好选择——它会给你比标准视图更好的性能。

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

于 2012-04-28T08:55:57.467 回答