2013-07-25 96 views
6

当横屏模式下使用Nexus 10设备时,我遇到了布局左侧和右侧看似无法解析的边距问题。 我确定这是一件令人尴尬的事情,但在四处搜寻时我找不到任何提及。Android:横向模式下Nexus 10上不需要的左/右边距

我很确定它与我的代码无关,因为由Eclipse创建的默认Hello World项目显示了这种现象。下面的截图摘录是从一个全新的项目,采取和我所做的唯一的变化就是让TextView的TEXTSIZE为清楚起见大一点:

Comparison of landscape and portrait orientations on the Nexus 10

你可以看到,从布局XML默认边距文件(如下所示)在纵向模式下正确应用,但在横向模式中应用了相当多的额外边距 - 由屏幕截图下方的红色条指示。

<!-- Default screen margins, per the Android Design guidelines. --> 
<dimen name="activity_horizontal_margin">16dp</dimen> 
<dimen name="activity_vertical_margin">16dp</dimen> 

有没有其他人看过这个或有任何想法我可以摆脱他们?我不知道从哪里开始,因为它似乎是特定于这一个设备和屏幕的方向。此外,它会影响最简单的程序,也可能影响我自己的程序,因此在我找出如何修复默认情况之前,将自己的代码分开是没有意义的。
在模拟设备和我的Samsung Galaxy S2(运行姜饼)上正确显示相同的屏幕。将Project Build Target从API级别17更改为10也不会改变不需要的效果。有什么想法吗?

回答

9

好吧,所以这是尴尬直截了当!

<!-- 
    Customize dimensions originally defined in res/values/dimens.xml (such as 
    screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here. 
--> 
<dimen name="activity_horizontal_margin">128dp</dimen> 

近一年SO潜伏并找到你所有的经过:在横向模式下的Nexus 10的余量从“价值观sw720dp土地”资源文件夹,这里声明了一个较大的值取我的问题,我最后决定正确地问的第一个结果就像这样微不足道......

+1

非常感谢。我一直在处理这个问题几个小时。我改变了我的所有布局和视图中的每个宽度和边距,并且没有任何工作。 – Tina

+0

有没有人发现博客或文档解释为什么这个巨大的128dp值用于景观?我注意到它在一些Android版本(甚至在设置中)都结束了。 –

0

谢谢,danj1974!你为我节省了很多时间!我在res /价值观w820dp/dimens.xml改变了设置

<dimen name="activity_horizontal_margin">0dp</dimen> 

和它的作品好。

+0

从'values-w820dp/dimens.xml'文件中删除这个值不是更简单吗? – aga

+0

@aga,好吧,一个好主意。我看到有一个文件values/dimens.xml。还有一个属性“activity_horizo​​ntal_margin”和“0dp”值。 – CoolMind

相关问题