android studio ...支持不同的屏幕尺寸

时间:2017-08-02 17:15:47

标签: android android-screen-support

我的项目包含一些活动以及一些片段..我该怎么做才能支持我的app..for所有屏幕尺寸?应用程序应该在所有不同的屏幕尺寸和手机中看起来相同

我已经使用了匹配父级和包装内容evrywhere的布局以及每个控件,如textview,image等

<% @products.each do |p| %>
  <%= p.user.company_name %>
<% end %>

1 个答案:

答案 0 :(得分:1)

正如ModularSynth所指出的,一些谷歌搜索很容易帮助这个。这是您在谷歌上搜索问题时弹出的第一件事:

https://developer.android.com/training/multiscreen/screensizes.html

我建议您阅读它,因为有许多不同的方法可以支持不同的尺寸。第一个是使用wrap_content和match_parent。这两个将填充该视图的所有可用空间,或仅使用所需的最小空间。您还可以使用诸如weight,layout_gravity,gravity和一些其他定位属性之类的东西,无论屏幕大小如何,这些属性都可以使用。使用relativeLayout也会很有帮助,因为您可以使用right_of,left_of,below和其他属性来创建布局。

如果您需要针对不同屏幕尺寸的不同行为,您也可以使用它变得更加复杂。您可以根据屏幕大小创建多个如何布局视图的选项,但是您需要编写更多代码。它提供了更多的创作自由,但也需要更多的努力。

通过更多示例,阅读上面的链接会更详细。支持不同屏幕尺寸和不同屏幕密度时最大的收获是永远不要使用硬编码像素值。不要使用setX(1250f)之类的东西设置位置,因为不同的屏幕具有不同的像素数量,因此您的布局可能在一个屏幕与下一个屏幕之间完全不同。如果您正在寻找用于特定定位的强力方法,您始终可以获取用户设备的宽度和高度,并将其用于定位计算。保存屏幕高度和宽度,然后执行setX(fullWidth / 4)等操作,将视图放置在屏幕宽度的四分之一处。它并不漂亮,但它适用于任何设备。