设计布局显示不一样

时间:2016-04-15 15:27:58

标签: android android-layout

如何编辑xml文件布局。所有显示屏都是一样的。

屏幕尺寸4.7“,5.0”显示精度。但除此之外的屏幕。显示失真。除了屏幕平板电脑。

帮我解决一下。

screen_main.xml

img64 = 'iVBORw0KGgoAAAANSUhEUgAAAC..........' # the full string goes here
dataImg64=img64.decode('base64')      
f = open('button1.png','wb') # write binary        
f.write(dataImg64)   
f.close() # may be omitted`

Display is not the same

4 个答案:

答案 0 :(得分:1)

此处不使用Frame Layout,因为Frame Layout用于显示单个视图。

答案 1 :(得分:1)

我发现您使用layout_widthlayout_height的固定dp值。 dp表示密度无关像素。它不是与尺寸无关的像素。 dp确保您的布局在具有相同尺寸但像素密度不同的设备上看起来相同。在较大的设备上看起来不一样。 如果您希望将其扩展为较大的设备,则必须使用match_parentwrap_content。 使用相对布局的力量也可以将项目放在屏幕的右侧。

您还可以为不同大小的设备制作单独的布局文件。因此,您可以根据大小自定义它。 您可以通过创建一个名为layout-sw600dp/(或您想要的任何数字)的新布局文件夹来实现此目的,该文件夹仅用于至少具有您指定宽度的设备(在此示例中为600dp)。 确保您的布局文件在此文件夹中的名称与普通文件夹中的名称相同。

您可以在文档中找到有关此内容的非常有用的信息: herehere

答案 2 :(得分:0)

您可以尝试使用GridLayout。这样,图像列将填满整个屏幕。

答案 3 :(得分:0)

你不能使用dp并期望在不同的结果上得到相同的结果 如果您希望所有设备都显示相同的显示,则可以使用weightSumweight这是一个小例子

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:weightSum="2">


        <LinearLayout
            android:id="@+id/layout1"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" />

        <LinearLayout
            android:id="@+id/layout2"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" />
</LinearLayout>