Android屏幕尺寸算法/模式

我正在寻找一种算法或模式来计算可以在多种分辨率下放置对象的位置.到目前为止,我已经获得了X和Y屏幕的大小,但是我不确定如何将其转换为无论屏幕大小如何都将诸如drawText()之类的内容放置在屏幕上的位置的计算.

我在想,也许使用百分比可能更容易使用.我有一个程序可以在屏幕左上角绘制文本,以指示触摸屏幕的位置.

当我在模拟器上运行时

drawText(info,10,10,paint);

显示很棒,但是当我在手机(Droid 2 Global)上运行它时,文本顶部被切除.

简而言之:

有什么办法(使用SurfaceView)在屏幕上绘制一些东西,这些东西会在多个屏幕尺寸/ dpi上保留在同一位置?

谢谢你的时间.

解决方法:

到目前为止,这并不是一个完美的解决方案.

我通过为特定屏幕比例(模拟器中的本机屏幕分辨率)指定特定项目的位置来遇到此问题,然后重新计算其位置并在不同屏幕尺寸下运行时按比例放大/缩小.

  displayXpos =  constDevelopmentScreenXpos (targetDeviceScreenHeight/constDevelopmentScreenHeight) etc..
  displayXScale = similaralgorithm

这不是最好的方法,但是可以给您一些想法.

另外,当目标设备X:Y屏幕比例与开发设备不同时,我用背景填充一些“边缘”区域,并选择不关心它.

HTH

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...