我有一个540像素屏幕尺寸(宽度)的设备。 我尝试这种布局:
<LinearLayout
android:orientation="horizontal"
android:layout_height="fill_parent"
android:layout_width="540dp"
>
但是LinearLayout比屏幕大。它的范围超出了屏幕范围。
我通过代码读出了屏幕大小:
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int width = displaymetrics.widthPixels;
和工具,所以屏幕宽度只有540像素。
怎么了?
答案 0 :(得分:0)
您在布局文件中使用的单位是'dp',而实际单位是'px' - 两者之间存在差异。 'dp'中给出的值由设备缩放。将您的值设置为540px可以解决您的问题。
答案 1 :(得分:0)
问题在于dp(以前称为首字母缩略词)代表“密度无关像素”,因此它会缩放到屏幕尺寸。您可以将单位设置为“px”,或者如果您尝试填充屏幕,则更准确地说是使用“match_parent”。
有一篇非常有帮助的文章here