2012-06-01 59 views
4

在我的应用程序中,我有小,正常和大型布局。最初当我购买三星Galaxy Note时,它配备了android 2.3.3,我在三星Galaxy Note中测试了我的应用程序,当时它需要布局形式布局 - 大而且一切正常。三星Galaxy Note没有从布局大xml文件更新到Android 4

但是,一旦我更新我的设备到Android 4.它开始采取布局表单布局 - 正常,并由于这一些我的页面对齐更改。所以我想知道为什么会发生这种情况,有没有办法解决这个问题。

+1

将所有图像资源放在“drawable-large-hdpi”文件夹中以备注:http://www.mobisoftinfotech.com/blog/android/android-ui-design-tips-for-samsung-galaxy-note/ –

回答

2

设备仍在报告相同的显示指标。密度/屏幕宽度&高度没有变化。但是当你升级到ICS(Android 4)时,它开始将显示度量标准解释为普通尺寸屏幕,姜饼(Android 2.3)会说这些完全相同的显示度量标准是大尺寸屏幕。

来解决这个问题的方法,是针对三星Galaxy Note的其它屏属于这一怪异的范畴,是创建一个名为布局:

layout-large-port-xhdpi-1280x800 

并提出要么你大或正常布局在那个资源里。这将迫使你的三星Galaxy Note使用你喜欢的布局,以及任一操作系统版本。

+0

没有工作的三星Galaxy Note N7000 ... – powder366

1

从Android 3.2(API级别13)开始,不推荐使用尺寸组(layout-small,layout-normal,layout-large和layout-xlarge),而应使用dp配置限定符定义布局资源所需的最小可用宽度。例如,如果您的布局需要至少600dp的屏幕宽度,则应将其放置在layout-sw600dp /中。

参考:http://developer.android.com/guide/practices/screens_support.html

+1

那么如果我运行我的应用程序在2.3,其中我有资源sw?我测试过它仍在使用布局大 – Mikey

+1

其实这是最好的答案,应该被接受为正确答案。 AFAIK所有大型和xlarge设备现在都支持新的限定符。 Galaxy Note我已经正式升级到ICS和JB。对于较小的屏幕,您可以使用旧的限定符,如布局正常和布局小。 – Herrbert74

4

是我在MainActivityonCreate发挥有点与getResources().getConfiguration();,并发现,该设备asuming其最小宽度与400dp,所以我把我的Galaxy Note的布局在布局-sw400dp文件夹,它的工作。在设备上安装了Android 4.0.3。

+0

许多手机的宽度为400dp。这可能不够接近。 – sandalone

0

您可以使用layout-sw400dp-land或layout-sw400dp。

即使使用Cianogenmod ROM,Galaxy Note 1也能正常工作。

相关问题